Java Exec Maven插件到命令行
我有一个在NetBeans/Maven中开发的应用程序,可以通过以下命令行启动:Java Exec Maven插件到命令行,java,command-line,smartcard,exec-maven-plugin,Java,Command Line,Smartcard,Exec Maven Plugin,我有一个在NetBeans/Maven中开发的应用程序,可以通过以下命令行启动: mvn exec:exec "-Dexec.executable=C:\\Java\\jdk1.6.0_33\\bin\\java.exe" "-Dexec.args=-Dlog4j.properties=... -classpath %classpath com.xxx.MyLauncher" -Dexec.classpathScope=runtime -Dexec.workingdir= 现在,我需要通过标准
mvn exec:exec "-Dexec.executable=C:\\Java\\jdk1.6.0_33\\bin\\java.exe" "-Dexec.args=-Dlog4j.properties=... -classpath %classpath com.xxx.MyLauncher" -Dexec.classpathScope=runtime -Dexec.workingdir=
现在,我需要通过标准java命令行方法运行应用程序,如:
java -Dlog4j.properties=... -jar myapp-1.2-SNAPSHOT.jar
不幸的是,这并不是以同样的方式工作的,因为我得到了以下异常:
opencard.core.util.OpenCardPropertyLoadingException: property file not found
问题:
- 使用execmaven插件启动应用程序与在命令行上执行标准java有什么区别
- 有没有一种简单的方法可以将Maven执行脚本转换为标准命令行
- 如何成功运行应用程序
用maven shade插件替换maven assembly插件可以解决这个问题。您的jar是否包含所有依赖项?请参阅此处了解更多信息:显然,在命令行上,您可以按可执行文件的方式执行jar,而在pom.xml中,您可以为其提供classpath和mainclass;你检查过你的清单条目是否与Maven构造的执行命令行匹配吗?看来类路径是问题所在,是由这个bug引起的[。用Maven shade插件替换Maven assembly插件解决了这个问题。感谢你的支持!感谢你的反馈。你现在可以接受投票表决的问题和答案了。