Maven:未找到引用Maven.runtime.classpath
我有两个文件:build.xml和pom.xml 我使用命令“ant-f build.xml run java file”从build.xml执行“run java file”任务,但在java中出现以下错误 /root/Documents/RELEASE_786_BRANCH/build.xml:36:Reference 找不到maven.runtime.classpath build.xml中的代码块:Maven:未找到引用Maven.runtime.classpath,maven,ant,pom.xml,maven-plugin,build.xml,Maven,Ant,Pom.xml,Maven Plugin,Build.xml,我有两个文件:build.xml和pom.xml 我使用命令“ant-f build.xml run java file”从build.xml执行“run java file”任务,但在java中出现以下错误 /root/Documents/RELEASE_786_BRANCH/build.xml:36:Reference 找不到maven.runtime.classpath build.xml中的代码块: <target name="run-java-file"> <
<target name="run-java-file">
<java fork="true" classname="com.mysoftware.setup.install.SetNewDatabase" classpathref="maven.runtime.classpath" failonerror="true">
<arg value="really" />
</java>
</target>
错误:
线程“main”java.lang.NoClassDefFoundError中出现异常:
org.apache.log4j.LogManager
位于com.mysoftware.setup.install.SetNewDatabase。(SetNewDatabase.java:46)
原因:java.lang.ClassNotFoundException:
org.apache.log4j.LogManager
位于java.net.URLClassLoader.findClass(URLClassLoader.java:591)
位于java.lang.ClassLoader.loadClassHelper(ClassLoader.java:952)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:897)
位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:880)
... 还有一个
是否存在任何类路径问题,如果是,请建议将什么设置为-cp?
谢谢。我不认为你的
build.xml
应该被直接调用。@JFMeier,那么请建议一个可使用的方法乍一看你需要调用Maven,Maven会调用antrun插件。因此,安装Maven(如果您还没有)并调用类似于mvn clean verify
@JFMeier的东西,您已经尝试过了,但它没有从构建中调用任务。xml@AnshuPatel当然,这不会导致Maven只有在使用Maven antrun插件时才会使用build.xml`。问题是为什么使用maven ant run而不是maven directory。。。
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<configuration>
<target>
<ant target="run-java-file" antfile="/root/Documents/RELEASE_786_BRANCH/build.xml">
<property name="skip.maven.ant.tasks" value="true" />
<reference torefid="maven.runtime.classpath" refid="maven.runtime.classpath"/>
</ant>
</target>
</configuration>
</execution>
</executions>
</plugin>
java -cp /root/Documents/RELEASE_786_BRANCH/target/classes
com.mysoftware.setup.install.SetNewDatabase