Community
Participate
Working Groups
I have installed Eclispe Neon today and notices a new warning in all my e4 applications: "An entry for my.bundle.id/Application.e4xmi is required in bin.includes" To me it seems as if it is wrong. The e4xmi is already included in the build.properties, just without the bundle-id as a prefix. bin.includes = .,\ META-INF/,\ plugin.xml,\ Application.e4xmi If I accept the quick fix, then my build.properties looks like this: bin.includes = .,\ META-INF/,\ plugin.xml,\ Application.e4xmi,\ my.bundle.id.app/Application.e4xmi And I see a new warning: "The file "my.bundle.id/Application.e4xmi" does not exist in the workspace"
I can not reproduce the issue. My Eclipse Neon is not warning me to include Application.e4xmi; see image http://i.imgur.com/YGukcMw.png Please, try to use Eclipse Neon, and tell if you can still reproduce the issue. If so, please, provide further details or steps to reproduce. Here is my configuration: Eclipse SDK Version: Oxygen (4.7) Build id: I20160708-1700 OS: Windows 10, v.10.0, x86_64 / win32
*** Bug 497672 has been marked as a duplicate of this bug. ***
Created attachment 263068 [details] Demo Project Project showing the problem
Created attachment 263069 [details] Screen shot with the warning Here is a screen shot of the warning. I am using: Eclipse IDE for Eclipse Committers Version: Neon Release (4.6.0) Build id: 20160613-1800
Since nobody could reproduce this I did some further testing and it seems as if this only applies to e4-fx projects. I filed Bug 498550 in e(fx)clipse.
I have the same warning on Neon 4.6.1 I don't have anything installed which e(fx)clipse.
More to my eclipse install. AspectJ - but not active in the project with this warning. MoreUnit IvyDE Extras
I notice the same misleading warning in either Eclipse Oxygen or Eclipse Photon on a Windows (64-bit) system. It cannot be related to e4-fx projects, because I have no such project in my workspace. Looking at the projects where it appears, the following is common for them: 1) They are branding bundles that provide the "org.eclipse.core.runtime.products" extension point 2) They do *not* use "org.eclipse.e4.ui.workbench.swt.E4Application" as application, instead they provide their own IApplication implementation but still use the e4 application model and make it aware to the platform via the "applicationXMI" property whose value is then value="my-bundle-id/Application.e4xmi" It seems as if the verification logic of the build.properties is broken, because my impression is that it compares the existing bin.includes entry name "Application.e4xmi" with the literal property value "my-bundle-id/Application.e4xmi" which of course don't match. Or the other way around: It expects to find the literal property value "my-bundle-id/Application.e4xmi" as entry in the build.properties file, which of course doesn't exist, because such a value wouldn't make sense.
See workaround in see https://bugs.eclipse.org/bugs/show_bug.cgi?id=500495 To make the warning go away, a project clean is needed. This might be a hint about the problem as well.
This workaorund only works if you use "Application.e4xmi". If you use another name (as we do), this does not work. So if I have a plugin.xml that has this entry below product: <property name="applicationXMI" value="my.bundle.id/MyOwnName.e4xmi" /> I will see the Warning: "An entry for my.bundle.id/MyOwnName.e4xmi is required in bin.includes" I can change the plugin.xml to: <property name="applicationXMI" value="MyOwnName.e4xmi" /> Which will make the warning go away, but of course the application will be broken: java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$1(LauncherImpl.java:182) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.NullPointerException at org.eclipse.fx.ui.workbench.base.internal.EFX_ResourceHandler.loadMostRecentModel(EFX_ResourceHandler.java:191) at org.eclipse.fx.ui.workbench.base.AbstractE4Application.loadApplicationModel(AbstractE4Application.java:534) at ...