在Opendaylight中,每当我做出改变时,我都会建立整个项目而不是特定的项目。 mvn clean install -DskipTests = true ..有什么办法可以跳过整个构建并构建项目的特定pom.xml ..例如,在ovsdb中,如果我想单独运行南行项目,我必须做什么?Opendaylight:如何使用maven构建特定项目?
0
A
回答
0
可以有一个更好的办法,但我用的解决方法是:
我使用bash脚本复制罐子+配置文件。
如果我更改代码的模块,
- 我建立改型的模块
- 执行脚本。将构建的jar文件,配置文件复制到unziped ODL分发的
System
文件夹内的特定文件夹位置。 - 我重新启动ODL。 bin/karaf清洁。
部分,我用它来更新公共瓶+配置
local.sh的bash脚本的:
elif [ $1 == common ]; then
cp /home/user/workspaces/workspace-odl/myproject/common/implementation/target/common-impl-2.0.0-SNAPSHOT.jar /home/user/controller/myproject-karaf-2.0.0-SNAPSHOT/system/com/myproject/common-impl/2.0.0-SNAPSHOT/common-impl-2.0.0-SNAPSHOT.jar
cp /home/user/workspaces/workspace-odl/myproject/common/model/target/common-model-2.0.0-SNAPSHOT.jar /home/user/controller/myproject-karaf-2.0.0-SNAPSHOT/system/com/myproject/common-model/2.0.0-SNAPSHOT/common-model-2.0.0-SNAPSHOT.jar
cp /home/user/workspaces/workspace-odl/myproject/common/config/src/main/resources/initial/89-common.xml /home/user/controller/myproject-karaf-2.0.0-SNAPSHOT/system/com/myproject/common-config/2.0.0-SNAPSHOT/common-config-2.0.0-SNAPSHOT-config.xml
rm /home/user/controller/myproject-karaf-2.0.0-SNAPSHOT/etc/opendaylight/karaf/89-common.xml
echo "Updated common"
执行:
./local.sh common
这将复制更新的罐子,下一次你将运行ODL,更新的罐子将是pi起来。
这很快,并且不需要我重建整个ODL项目。
0
如果您正在使用第一次使用命令来构建整个项目
MVN干净安装-DskipTests -Dcheckstyle.skip =真
对于后续的变化说你有在southbound-改变使用上述命令,impl构建南行 - impl。
接下来使用上述命令构建南行卡拉夫。然后你可以开始测试卡拉夫。目标/组装/ bin/karaf。[SH |蝙蝠]
0
假设你有you Maven settings.xml
相应的条目,您可以通过它的文件夹中运行Maven构建在OpenDaylight Maven项目的任何模块;为ovsdb
southbound
:
cd southbound
mvn clean install
另外,从项目的根:
mvn -f southbound clean install
如果你只是想建立一个单独的模块(无其子):
mvn -pl southbound clean install
(这些都是标准的Maven选项。)
OpenDaylight包含几个漂亮的外部你可以用它来对构建更快速迭代:
的
q
文件跳过不有助于得到的神器所有目标(静态分析,测试,文档...):mvn -f southbound clean install -Pq
mvn -f southbound clean install -DaddInstallRepositoryPath=.../karaf/system
(取代:
更新的JAR可以直接在一个预先存在的Karaf系统文件夹使用addInstallRepositoryPath
变量被安装带有适当路径的...
)。
这些可以结合,所以
mvn -f southbound clean install -DaddInstallRepositoryPath=.../karaf/system -Pq
构建和安装在一个现有的Karaf中的JAR(其甚至可以在运行 - 它将重新加载束)。
相关问题
- 1. 无法在maven中构建opendaylight项目
- 2. 如何使用maven构建aspectj项目?
- 3. 如何使用构建项目导入maven项目
- 4. 使用Maven自定义并构建另一个Maven项目
- 5. Jenkin无法使用maven构建项目
- 6. 使用Maven命令构建Netbeans项目
- 7. 无法使用maven构建项目
- 8. 使用Maven构建Grails项目Issue
- 9. 使用Maven构建Eclipse项目
- 10. 如何构建Maven项目包明智?
- 11. 如何在Eclipse中构建maven项目
- 12. 如何使用构建路径使用的依赖项创建Maven项目jar?
- 13. 创建项目特定的Maven设置
- 14. 如何使用Maven构建带有库项目依赖项的Android SDK项目
- 15. 构建多个Maven项目
- 16. Maven项目构建问题
- 17. 与Junit构建Maven项目
- 18. 如何使用maven构建这个java项目?
- 19. 如何在maven中使用EJB和WAR构建EAR项目?
- 20. 如何使用Maven构建Adobe Air项目?
- 21. 如何使用脚本文件构建maven项目?
- 22. MuleSoft使用Maven构建项目构建问题
- 23. 使用maven将1个项目构建为不同的项目
- 24. 如何用maven结构构建Hello-World项目?
- 25. 如何更改Maven构建项目的reactor构建顺序
- 26. 如何使用Gradle构建Maven项目作为对根项目的依赖?
- 27. 用maven构建可可项目
- 28. 禁用特定项目的maven版本
- 29. 如何使用RequireJS构建JavaScript项目
- 30. 如何使用CMake构建OpenSceneGraph项目?