JavaFX Maven plug-in and API are incompatible
•
Java
I recently upgraded my java version to 7u40. 0 on my Fedora 19 Then I started to make a nasty mistake in the JavaFX project I'm currently running:
[INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.929s [INFO] Finished at: Wed Oct 16 17:36:05 CEST 2013 [INFO] Final Memory: 11M/155M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal com.zenjava:javafx-maven-plugin:2.0:run (default-cli) on project browser: Execution default-cli of goal com.zenjava:javafx-maven-plugin:2.0:run Failed: An API incompatibility was encountered while executing com.zenjava:javafx-maven-plugin:2.0:run: java.lang.NoSuchMethodError: org.apache.maven.execution.MavenSession.getRepositorySession()Lorg/sonatype/aether/RepositorySystemSession; [ERROR] ----------------------------------------------------- [ERROR] realm = plugin>com.zenjava:javafx-maven-plugin:2.0 [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy [ERROR] urls[0] = file:/home/sk_/.m2/repository/com/zenjava/javafx-maven-plugin/2.0/javafx-maven-plugin-2.0.jar [ERROR] urls[1] = file:/home/sk_/.m2/repository/org/twdata/maven/mojo-executor/2.0/mojo-executor-2.0.jar [ERROR] urls[2] = file:/home/sk_/.m2/repository/org/sonatype/aether/aether-util/1.7/aether-util-1.7.jar [ERROR] urls[3] = file:/home/sk_/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar [ERROR] urls[4] = file:/home/sk_/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar [ERROR] urls[5] = file:/home/sk_/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar [ERROR] urls[6] = file:/home/sk_/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar [ERROR] urls[7] = file:/home/sk_/.m2/repository/org/codehaus/plexus/plexus-utils/1.5.1/plexus-utils-1.5.1.jar [ERROR] urls[8] = file:/home/sk_/.m2/repository/org/sonatype/sisu/sisu-inject-bean/1.4.2/sisu-inject-bean-1.4.2.jar [ERROR] urls[9] = file:/home/sk_/.m2/repository/org/sonatype/sisu/sisu-guice/2.1.7/sisu-guice-2.1.7-noaop.jar [ERROR] urls[10] = file:/home/sk_/.m2/repository/org/codehaus/plexus/plexus-archiver/2.1.1/plexus-archiver-2.1.1.jar [ERROR] urls[11] = file:/home/sk_/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar [ERROR] urls[12] = file:/home/sk_/.m2/repository/org/codehaus/plexus/plexus-io/2.0.3/plexus-io-2.0.3.jar [ERROR] urls[13] = file:/usr/java/jdk1.7.0_45/jre/../lib/ant-javafx.jar [ERROR] Number of foreign imports: 1 [ERROR] import: Entry[import from realm ClassRealm[maven.api,parent: null]] [ERROR] [ERROR] ----------------------------------------------------- [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors,re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions,please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException
Does anyone face it?
Solution
By configuring my JavaFX Maven plugin as follows (specifying the mojo executor version as 2.1.0), I can 1 to solve this problem
<build> <plugins> <plugin> <groupId>com.zenjava</groupId> <artifactId>javafx-maven-plugin</artifactId> <version>2.0</version> <configuration> <mainClass>net.jalbright.scratch.App</mainClass> </configuration> <dependencies> <dependency> <groupId>org.twdata.maven</groupId> <artifactId>mojo-executor</artifactId> <version>2.1.0</version> </dependency> </dependencies> </plugin> </plugins> </build>
The JavaFX Maven plugin will be updated in the next release to use mojo executor to 2.1 0 (see: https://github.com/zonski/javafx-maven-plugin/issues/32 )So once JavaFX Maven plugin gets rev, it can be deleted
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码