问题
I have an issue that I spend 5 days without resolving it:
When executing mvn exec:java
it fails to correctly parse the configuration arguments, throwing the following error:
"Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.1:java (default-cli) on project poll-translator: An exception occured while executing the Java class. null: InvocationTargetException: Error creating bean with name 'serviceLocator' defined in class path resource [META-INF/dsol/dsol.xml]: Cannot resolve reference to bean 'dsol-service-proxy' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dsol-service-proxy' defined in class path resource [META-INF/dsol/dsol.xml]: Instantiation of bean failed; nested exception is net.sf.cglib.core.CodeGenerationException: java.lang.NullPointerException-->null -> [Help 1]"
This is the POM configuration used file (using Apache Maven 3.0.4):
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.dsol</groupId>
<artifactId>dsol-parent</artifactId>
<version>1-SNAPSHOT</version>
<relativePath>../dsol/dsol-parent/pom.xml</relativePath>
</parent>
<groupId>org.dsol.project</groupId>
<artifactId>poll-translator</artifactId>
<version>0.1-SNAPSHOT</version>
<properties>
<dsol.version>0.1-SNAPSHOT</dsol.version>
</properties>
<repositories>
<repository>
<id>dsol.internal</id>
<url>http://maven.dsol-lang.net:8080/archiva/repository/internal/</url>
</repository>
<repository>
<id>dsol.snapshots</id>
<url>http://maven.dsol-lang.net:8080/archiva/repository/snapshots/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.dsol</groupId>
<artifactId>dsol-interpreter</artifactId>
<version>${dsol.version}</version>
</dependency>
<dependency>
<groupId>org.dsol</groupId>
<artifactId>dsol-default-planner-plugin-impl</artifactId>
<version>${dsol.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-jetty</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>org.dsol.engine.DSOLServer</mainClass>
</configuration>
</plugin>
<plugin>
<groupId>com.thoughtworks.paranamer</groupId>
<artifactId>paranamer-maven-plugin</artifactId>
<executions>
<execution>
<id>run</id> <!-- id is optional -->
<configuration>
<sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
</configuration>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
com.thoughtworks.paranamer
</groupId>
<artifactId>
paranamer-maven-plugin
</artifactId>
<versionRange>
[2.3,)
</versionRange>
<goals>
<goal>generate</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
Idon't know where is the problem and how can i resolve it! Can you help me please?
Regards, Sana.
回答1:
The problem is with your spring configuration and not with your maven config.
In your case, when spring tries to create dsol-service-proxy
object its constructor requires
serviceLocator
which inturn creates serviceLocator
and spring encountered some problem in creating your serviceLocator
. Check your dsol.xml
and make sure serviceLocator
is configured correctly.
回答2:
Another possible solution is that if you have something like this <argument>${env.ANDROID_HOME}/build-tools/android-4.2.2/lib/dx.jar</argument>
, consider adding ANDROID_HOME to environment path variables.
来源:https://stackoverflow.com/questions/13551087/failed-to-execute-goal-org-codehaus-mojo-exec-maven-plugin