m2eclipse 插件有一个项目选项“Resolve dependencies from Workspace projects”,它告诉下游 Maven 项目使用target/classes
上游依赖项的目录而不是使用打包的 jars。有没有办法告诉mvn
做同样的事情?
例如,如果我有两个项目,foo
并且bar
和bar
依赖于foo
,那么在命令行上我必须先打包并安装foo
,然后才能运行bar
:
cd ~/foo
mvn package install
cd ~/bar
mvn prepare-package
java -cp target/classes:$(mvn -o -q -Dmdep.outputFile=/dev/stdout dependency:build-classpath) Bar
但我想避免打包所有项目,因为 1)它有很多冗余 I/O,以及 2)如果我保存在 Eclipse 中并从命令行运行,很容易忘记再次打包所有项目,然后我'会浪费时间想知道为什么我的更改不起作用。
那么有什么方法可以改变pom.xml
,以便mvn
命令使用解压缩的类mvn prepare-package
而不是mvn install
存储库?