如何使用.m2中的所有.jar进行编译?
我正在尝试使用 javac
调试具有许多依赖项的文件的 mvncompile
。
这就是我尝试执行此操作的方式:
CLASSPATH=`find ~/.m2 -name *.jar -print0`; javac -verbose BogusFile.java
我的问题是我不确定如何告诉 find 分隔使用 unix 文件分隔符 (:
) 找到的每个 jar。
也许 -printf
有解决方案?
I'm trying debug mvn compile
of a file with many dependencies with javac
.
This is how I'm trying to do this:
CLASSPATH=`find ~/.m2 -name *.jar -print0`; javac -verbose BogusFile.java
My problem is that I'm not sure how to tell find to separate each jar found with the unix file separator (:
).
Maybe the -printf
has the solution?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
抱歉,我无法回答您的问题,但提供可能的其他解决方案。
如果您需要为您的 Maven 项目构建类路径,您可以运行 Maven 依赖项插件<的复制依赖项目标/a> 在您的项目上:
Maven 会将项目的所有依赖项(也是传递性的)复制到
target/dependency
目录,并且类路径可以设置为target/dependency/*;
(您仍然需要包括您的神器罐)。示例:
代码:
目录:
编译命令:
结果:
Sorry I can not answer your question but give a possible other solution approach.
If you need to build a classpath for your maven project you can run the copy-dependencies goal of the Maven Dependency Plugin on your project:
Maven will copy all dependencies for your project (also transitive) to the
target/dependency
directory and classpath can be set totarget/dependency/*;
(you still have to include your artifact jar).Example:
Code:
Directory:
Compile Command:
Result:
通过
:
分隔符连接所有 jar,以用作编译器的类路径。Join all the jars by
:
separator, to use as the classpath for the compiler.