javafxpackager and launcher wrappers now in OpenJFX 8
Artem Ananiev
artem.ananiev at oracle.com
Thu Dec 27 17:01:01 PST 2012
Hi, Daniel,
in closed repo ${jfx.release.*.version} properties are set in the
toplevel project.properties file. For some unknown reason, they are
missed in open workspace:
http://hg.openjdk.java.net/openjfx/8/master/file/5849e8c0f122/project.properties
I don't know how it's supposed to work, hopefully Kevin or Scott will
comment when they are back from holidays. As a temporary workaround, try
setting major version to 8 and minor/micro version to 0.
Thanks,
Artem
On 12/25/2012 2:27 PM, Daniel Zwolenski wrote:
> Thanks Artem!
>
> I just tried it with the change and it seems to be getting further.
>
> I think I need to set up some properties somewhere though; a bunch of
> things seem to be referencing various variables that aren't set. I could
> try manually setting each one that fails, but if you guys could share a
> copy of the properties file that you use (or talk me through it, or
> whatever), I'd feel more confident that I'm not missing anything. Since
> I'll basically be doing the build that gets released it would be great
> if it could be as close to the official build as possible.
>
> Here's some of the error log that looks most relevant:
>
>
> winlaunch:
> Property "jfx.release.major.version" has not been set
> Property "jfx.release.minor.version" has not been set
> Property "jfx.release.micro.version" has not been set
> [copy]
> C:\dev\openjfx\8\master\rt\deploy\packager\winlauncher\javafxpackager.manifest
> omitted as
> C:\dev\openjfx\8\master\rt\deploy\packager\winlauncher\build\javafxpackager.manifest
> is up to date.
> [exec] Current OS is Windows 7
> [exec] Output redirected to property: cygwin.path
> [exec] Executing 'cygpath' with arguments:
> [exec] '-m'
> [exec] '-s'
> [exec] '/'
> [exec]
> [exec] The ' characters around the executable and arguments are
> [exec] not part of the command.
> [available] Unable to find file C:\apps\cygwin\bin\g++-3.exe
> [property] Loading C:\dev\openjfx\8\master\rt\deploy\vs.properties
> Property "jfx.release.major.version" has not been set
> Property "jfx.release.minor.version" has not been set
> Property "jfx.release.micro.version" has not been set
> Property "short.platform.home" has not been set
> Property "winlauncher.class.dir" has not been set
> [exec] Current OS is Windows 7
> [exec] Setting environment variable:
> FX_MAJOR_VERSION=${jfx.release.major.version}
> [exec] Setting environment variable:
> FX_MINOR_VERSION=${jfx.release.minor.version}
> [exec] Setting environment variable:
> FX_UPDATE_VERSION=${jfx.release.micro.version}
> [exec] Setting environment variable: FX_BUILD_NUMBER=0000
> ...
> [exec] Setting environment variable: JDK_HOME=${short.platform.home}
> [exec] Setting environment variable: CONF=Release
> [exec] Setting environment variable: DIST_DIR=dist
> [exec] Setting environment variable: BUILD_DIR=build
> [exec] Setting environment variable:
> CLASS_DIR=${winlauncher.class.dir}
> [exec] Executing 'C:\WINDOWS\System32\cmd.exe' with arguments:
> [exec] '/C'
> [exec] 'C:\apps\cygwin\bin\make.exe'
> [exec] '-f'
> [exec] 'Makefile'
> [exec] ''
> [exec]
> [exec] The ' characters around the executable and arguments are
> [exec] not part of the command.
> [exec] rc.exe /l 0x409 /r /Ibuild -d "JFX_DVERSION=...0000" -d
> "JFX_VERSION=,,,0000" -d NDEBUG -fobuild/javafxpackager.res
> javafxpackager.rc
> [exec] Microsoft (R) Windows (R) Resource Compiler Version
> 6.1.7600.16385
> [exec] Copyright (C) Microsoft Corporation. All rights reserved.
> [exec]
> [exec]
> [exec] javafxpackager.rc(20) : error RC2127 : version WORDs
> separated by commas expected
> [exec] Makefile:77: recipe for target `dist/javafxpackager.exe' failed
> [exec] make: *** [dist/javafxpackager.exe] Error 2
> [ant] Exiting C:\dev\openjfx\8\master\rt\deploy\packager\build.xml.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> On Tue, Dec 25, 2012 at 11:15 PM, Artem Ananiev
> <artem.ananiev at oracle.com <mailto:artem.ananiev at oracle.com>> wrote:
>
>
> Here is the bug filed about this build failure:
>
> http://javafx-jira.kenai.com/__browse/RT-27209
> <http://javafx-jira.kenai.com/browse/RT-27209>
>
> Thanks,
>
> Artem
>
>
> On 12/25/2012 4:10 PM, Artem Ananiev wrote:
>
> Hi, Daniel,
>
> On 12/21/2012 4:36 PM, Daniel Zwolenski wrote:
>
> I've had a crack at trying to build this. Got part of the
> way but hit
> some
> problems now. Is there any docco on how to do this or is it
> just muddle
> through it?
>
> I worked out the whole clone master and then clone rt thing.
> Then I
> installed Cygwin and eventually got that working. I already
> had Visual
> Studio (10) installed and looks like it found it but I
> didn't do anything
> to make it work.
>
> I got an error relating to a file with ${jfx.build.dir} in
> the path so I
> added this property in a random properties file
> (project.properties)
> to be
> ".". I imagine that's not right but it got me further.
>
> It gives a bunch of warnings about propriety APIs in
> -do-compile but
> seems
> to get passed this bit.
>
> I see the following message a fair bit, but not sure it's a
> problem?
>
> [taskdef] Could not load definitions from resource
> net/sf/antcontrib/antcontrib.__properties. It could not be
> found.
>
> Eventually the build fails with this error though:
>
> winlaunch:
> [copy] Copying 1 file to
> C:\dev\openjfx\8\master\rt\__deploy\packager\winlauncher\__build
> [exec] cl.exe -nologo -MT -Fdbuild/ -GS -W3 -EHsc -DWIN32
> -D_LITTLE_ENDIAN -DWIN32_LEAN_AND_MEAN
> -D_WIN32_WINDOWS=0x0500
> -D_WIN32_WINNT=0x0500 -I. -Ibuild -I/include -I/include/win32
> -I/Include
> -c -Zi -O2 -Fobuild/main.obj main.cpp
> [exec] main.cpp
> [exec] main.cpp(259) : warning C4018: '<' :
> signed/unsigned
> mismatch
> [exec] main.cpp(270) : warning C4018: '<' :
> signed/unsigned
> mismatch
> [exec] main.cpp(287) : warning C4018: '<' :
> signed/unsigned
> mismatch
> [exec] main.cpp(427) : warning C4996: 'getenv': This
> function or
> variable may be unsafe. Consider using _dupenv_s instead. To
> disable
> deprecation, use _CRT_SECURE_NO_WARNINGS. See online help
> for details.
> [exec] c:\Program Files (x86)\Microsoft
> Visual Studio
> 10.0\VC\INCLUDE\stdlib.h(433) : see declaration of 'getenv'
> [exec] rc.exe /l 0x409 /r /Ibuild -d
> "JFX_DVERSION=...0000" -d
> "JFX_VERSION=,,,0000" -d NDEBUG -fobuild/javafxpackager.res
> javafxpackager.rc
> [exec] Microsoft (R) Windows (R) Resource Compiler
> Version
> 6.1.7600.16385
> [exec] Copyright (C) Microsoft Corporation. All
> rights reserved.
> [exec]
> [exec] javafxpackager.rc(6) : fatal error RC1015:
> cannot open
> include
> file 'afxres.h'.
> [exec] Makefile:77: recipe for target
> `dist/javafxpackager.exe'
> failed
> [exec] make: *** [dist/javafxpackager.exe] Error 1
>
> BUILD FAILED
> C:\dev\openjfx\8\master\rt\__deploy\build.xml:84: The
> following error
> occurred while executing this line:
> C:\dev\openjfx\8\master\rt\__deploy\packager\build.xml:290: exec
> returned: 2
>
> Any tips on what to do next?
>
>
> this is a problem in rt/deploy sources. afxres.h is a header
> from VC,
> not Windows SDK, it's shipped with VC Professional and missed in VC
> Express.
>
> Fortunately, the fix is easy: just replace #include "afxres.h" with
> #include <windows.h> in javafxpackager.rc
>
> If you then face another failure when building IconSwap.vcxproj,
> please,
> let me know. I had a problem with this project file, but not sure if
> it's an issue with my environment.
>
> Thanks,
>
> Artem
>
> By the way, my first goal with this is to be able to build
> all this stuff
> and then I intend to upload it to the central Maven repo so
> everyone
> using
> Ivy, Maven, Grails, etc, can use these libraries in their own
> tools/plugins/etc. If you're not familiar with Maven,
> uploading it to
> central is basically like putting it on a big FTP server
> that anyone can
> download it from. All the other OSS projects are up there
> from apache
> commons, to Spring, to whatever you want. You don't have to
> build the
> code
> using Maven to do this, this deployment is a separate process.
>
> Typically this sort of distribution would be managed by the
> vendor but
> I'm
> assuming you guys aren't interested in doing that?
>
> The Sonatype guys (who we upload via) won't care if it is
> you or me
> (since
> your licence gives me the right) but it will be deployed
> under the
> "javafx"
> (or "javafx.deploy") groupId. So they will give me access to
> this, which
> means I could deploy anything I want (e.g. something
> malicious) and it
> would, to an outsider, look reasonably like an official
> Oracle release.
> Anyone referencing that JAR (e.g. the Gradle plugin or maybe
> an IDE like
> Eclipse or IntelliJ) would then end up with my malicious bit
> of code. Not
> your problem officially but not the best situation to find
> yourselves in.
>
> Now obviously I'm not going to do that, and anything I do is
> easily
> traced
> back to me for beatings, but if it were me in your shoes I'd be
> inclined to
> keep control over that sort of thing for something as big
> and widely used
> as Maven. Up to you how you want to move forward. I would be
> very
> happy to
> work with you guys, do 90% of the leg work and help you sort
> this out if
> you want. If not I'd also be fine to just get it into the
> repo myself
> (and
> in the absence of a clear decision from you guys that's what
> I'll do).
> I'm
> wanting to move pretty fast on this though, so looking for
> something that
> will happen over the next few weeks rather than months.
>
> Cheers,
> Dan
>
>
>
>
>
>
>
> On Thu, Dec 20, 2012 at 10:57 AM, Kevin Rushforth <
> kevin.rushforth at oracle.com
> <mailto:kevin.rushforth at oracle.com>> wrote:
>
> Slight correction. They are in the 8/controls/rt repo
> now, and will
> be in
> the 8/master/rt repo after Thursday's promoted build.
>
> -- Kevin
>
>
>
> Scott Kovatch wrote:
>
> Hello,
>
> The packager and launcher wrapper classes are now in
> the master
> OpenJFX 8
> repository, in rt/deploy. It's not wired up to the
> top-level
> build.xml yet,
> and it looks like I have some dependencies on build
> variables in the
> closed
> JavaFX build. Everything compiles, and the output
> ends up in
> rt/deploy/dist.
>
> But, you should be able to get the source and start
> looking at how
> bundled apps are produced, and see what goes into
> dtjava.js. As time
> permits I'll try to clean up the output locations so
> everything ends
> up in
> artifacts.
>
> -- Scott K.
>
> --
> Scott Kovatch
> scott.kovatch at oracle.com
> <mailto:scott.kovatch at oracle.com>
> Pleasanton, CA
>
>
>
>
>
>
>
More information about the openjfx-dev
mailing list