This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 205844 - JavaFX-Class-Path is not set in manifest file
Summary: JavaFX-Class-Path is not set in manifest file
Status: VERIFIED FIXED
Alias: None
Product: javafx
Classification: Unclassified
Component: Deployment (show other bugs)
Version: 7.1
Hardware: PC Windows XP
: P3 normal (vote)
Assignee: Petr Somol
URL:
Keywords:
: 210055 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-12-02 12:49 UTC by kavedaa
Modified: 2012-05-23 15:17 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
simplified patch for use in 7.1.1 (68.49 KB, patch)
2012-01-31 13:24 UTC, Petr Somol
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description kavedaa 2011-12-02 12:49:01 UTC
Netbeans 7.1 beta adds all jars in the lib folder to the JavaFX-Class-Path entry in the manifest file for the main jar.

Netbeans 7.1 RC1 fails to do this, meaning that applications will not run (outside of Netbeans).
Comment 1 Petr Somol 2011-12-02 14:15:43 UTC
To create FX Project jars NB7.1 calls the <fx:jar> task that is part of JavaFX 2.0+ SDK. NB passes a fileset to <fx:jar> that includes all jars in lib/ subdirectory. This can be verified by looking into the generated jnlp file - jars in lib/ should be referenced there. Can you please verify the jnlp file in your case ?
Anyway, I confirm that doubleclicking FX jar of a FX Project that has a dependency on another project throws an exception. There is no JavaFX-Class-Path defined in main jar manifest, but there is a Class-Path defined that does contain the needed reference. It looks like a problem inside <fx:jar>.

Which version of JavaFX SDK do you use ?
Comment 2 kavedaa 2011-12-02 15:04:08 UTC
Yes, the jnlp file worked without problems.

JavaFX SDK 2.0.1.
Comment 3 Petr Somol 2011-12-07 09:09:47 UTC
confirming this is a problem in NB7.1 and not in JavaFX SDK
Comment 4 Petr Somol 2011-12-20 08:42:33 UTC
fixed in jetmain
http://hg.netbeans.org/jet-main/rev/a3ba274654dc
together with replacement of J2SE <copylibs> task
by pure script solution in jfx-impl.xml.
This also improves the speed of build process.
Comment 5 Quality Engineering 2011-12-21 15:37:55 UTC
Integrated into 'main-golden'
Changeset: http://hg.netbeans.org/main-golden/rev/a3ba274654dc
User: Petr Somol <psomol@netbeans.org>
Log: #205844 - JavaFX-Class-Path is not set in manifest file fix + jfx-impl.xml performance improvement
Comment 6 Ingmar 2012-01-19 15:40:49 UTC
I have still the same problem in NB 7.1 (downloaded on 16.01.2012) and JavaFX 2.0.2 - I thought the bug was already fixed?
Comment 7 Petr Somol 2012-01-19 16:26:53 UTC
The fix apparently did not make it into NB7.1. In current daily builds this bug is not reproducible. 

I have removed the dependence on 204765 which was unnecessary here. I also added 71patch1-candidate to Whiteboard to notify QA that the fix should be considered for inclusion in NB7.1.1.
Comment 8 Stepan Zebra 2012-01-31 09:55:20 UTC
If this fix can be separated from issue 206152 and NB will be able to handle both versions of jfx-impl.xml correctly, then it's possible to include it into 7.1.1.

Petr, please confirm that those requirements are met (or should be by design). I'll run tests afterwards to verify.
Comment 9 Petr Somol 2012-01-31 13:24:55 UTC
Created attachment 115411 [details]
simplified patch for use in 7.1.1

Attaching a simplified patch for verification for inclusion in 7.1.1 which does not modify functionality in any way, but only repairs wrong temporary property name references in build script jfx-impl.xml (the patch does this for FX project template plus all included FX sample projects, hence the large patch size despite its trivial contents). The now corrected mistake consisted in forgotten rename of properties copied from "deploy" macro to "jar" macro, where in the new context the old names (pp_deploy_* instead of pp_jar_*) could not be recognized and thus yielded empty library references when fx:jar task was called.
Comment 10 Stepan Zebra 2012-01-31 14:45:59 UTC
Mariane, we would like to put the attached patch into release71_fixes to make this issue fixed for 7.1.1.

It's a subset of the trunk patch, which is more complex and part of a wider changes of FX projects metadata (described in issue 206152). The changes of FX projects metadata are targeted for 7.2 along with metadata autoupdater (issue 204765) to ensure compatibility.

Transplanting the whole trunk patch would lead to similar incompatibility which was between 7.1 Beta and 7.1 final.

The simplified patch will only slightly adjust FX projects metadata, so all the newly created FX projects in 7.1.1 would avoid this bug.

Please, let us know, if it's ok to use the simplified patch, so I can start testing it.
Comment 11 Marian Mirilovic 2012-02-03 17:09:30 UTC
(In reply to comment #10)
> Mariane, we would like to put the attached patch into release71_fixes to make
> this issue fixed for 7.1.1.

agreed
Comment 12 Stepan Zebra 2012-02-06 07:39:14 UTC
attached patch for 7.1.1 verified, please integrate
Comment 13 Petr Somol 2012-02-06 15:39:55 UTC
pushed the simplified patch to releases branch release71_fixes:
http://hg.netbeans.org/releases/rev/dfbe6a240b32
and increased spec versions
http://hg.netbeans.org/releases/rev/5cbea92ad35a
Comment 14 Quality Engineering 2012-02-08 02:33:25 UTC
Integrated into 'releases', will be available in build *201202072200* or newer. Wait for official and publicly available build.
Changeset: http://hg.netbeans.org/releases/rev/dfbe6a240b32
User: Petr Somol <psomol@netbeans.org>
Log: #205844 JavaFX-Class-Path is not in manifest file - fix for 7.1.1
Comment 15 Stepan Zebra 2012-02-13 14:58:00 UTC
verified in trunk
Comment 16 Stepan Zebra 2012-02-13 14:58:34 UTC
(In reply to comment #15)
> verified in trunk

not trunk, 7.1.1 of course
Comment 17 Petr Somol 2012-05-23 15:17:40 UTC
*** Bug 210055 has been marked as a duplicate of this bug. ***