在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項目?