回答
p2存儲庫沒有(正式的)快照和非快照構件的概念。因此,從技術上講,只要您不通過pomDependencies=consider從Maven存儲庫使用SNAPSHOT工件,就不會在Tycho構建中擁有快照依賴關係。後者可以用與Maven相同的方式阻止,即通過在settings.xml中控制Maven庫(參見例如this other answer)。
但可能這不是你要找的。您可能希望確保不引用最終會消失的構件,並使構建不可重現。爲此,您必須檢查引用的p2存儲庫的保留策略,並確保您僅引用永久保留的p2存儲庫。 (例如:Retention policy of the Eclipse project p2 repositories)
如果保留策略不夠好(或者您不信任提供者實際堅持),則需要存儲引用的p2存儲庫的副本。例如,您可以將zip存儲庫下載爲zip(或者鏡像存儲庫並自行壓縮),然後將其部署到Nexus OSS,並通過Unzip Plugin從您的版本訪問它。 (免責聲明:Unzip插件是Tycho項目的一個產品,我是其中一個提交者。)
感謝您的回答。我的項目中的許多模塊都包含依賴項,這些依賴項存儲在模塊文件夾的「lib」目錄中,並在plugin.xml編輯器的「runtime/classpath」部分中引用。我想阻止包含這些依賴關係的快照。那些不是Eclipse插件。也許我以不正確的方式包括他們? –
這聽起來像庫來自Maven,所以您應該考慮防止Maven在構建中使用SNAPSHOT構件。正確的'settings.xml'配置應該爲你解決這個問題。 – oberlies
這些是使用Maven構建的,但未在Maven的Eclipse應用程序中導入。它們是使用eclipse中的plugin.xml編輯器手動添加的。當有人開發這些代碼時,我想使用快照,但是我希望在發佈時檢查以確保這些代碼在我的Manifests或build.properties中都沒有引用。 –
看一看的Maven Settings References:
庫: 的版本中,快照:這些是每種類型的神器,發佈或快照的政策。有了這兩套,POM就有能力在單個存儲庫內改變每種類型的策略,使其獨立於另一種。例如,可能決定僅啓用快照下載,可能用於開發目的。 啓用:對於是否爲相應類型(發行版或快照)啓用此存儲庫是true或false。 updatePolicy:此元素指定更新嘗試發生的頻率。 Maven會將本地POM的時間戳(存儲在存儲庫的maven-metadata文件中)與遠程進行比較。選項包括:always,daily(默認),interval:X(其中X是以分鐘爲單位的整數)或從不。 checksumPolicy:當Maven將文件部署到資源庫時,它也會部署相應的校驗和文件。您的選擇是忽略,失敗或警告丟失或不正確的校驗和。 佈局:在上面的知識庫描述中,有人提到它們都遵循共同的佈局。這大多是正確的。 Maven 2有一個默認的倉庫佈局;然而,Maven 1.x有不同的佈局。使用這個元素來指定它是默認的還是遺留的。
我認爲你以後的設置可能接近以下內容。
<repository>
<id>my-repo</id>
<name>My Repo</name>
<url>http://my.repo.org</url>
<snapshots>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
這在一個典型的maven構建中是正確的,在這個構建中,依賴關係被添加到pom.xml文件中。在Tycho構建中,依賴項位於MANIFEST.MF文件中,由Eclipse和RCP框架維護。 –
- 1. 如何包含兩個不同版本的相同依賴項?
- 2. Maven。查找包含依賴的版本由依賴
- 3. 如何編輯快照依賴關係
- 4. 詹金斯Maven的版本:更換快照依賴
- 5. Maven - 釋放快照依賴
- 6. 在Maven站點中包含Tycho依賴項
- 7. NPM包不同版本的依賴
- 8. 搖籃依賴管理 - 傳遞依賴版本不正確
- 9. 如何防止tycho-p2-repository-plugin包含目標平臺依賴項?
- 10. 如何在Tycho內部版本中添加依賴項到Eclipse套件中
- 11. Gem依賴版本的含義
- 12. 如何包含firebase快照鍵值? [Swift]
- 13. NPM鎖定依賴包中的依賴版本package.json
- 14. 爲什麼Maven包含相同依賴的多個版本?
- 15. maven依賴版本?
- 16. Bower依賴版本
- 17. Rails:如何包含gem依賴項?
- 18. 如何包含dr.js的依賴關係?
- 19. C#:如何包含依賴的DLL?
- 20. 如何確保在Eclipse Galileo的最終EAR中包含Utility Projects庫依賴項?
- 21. Maven的強制更新快照依賴
- 22. TeamCity快照依賴GitHub分支
- 23. 快照與Gradle的依賴關係
- 24. 快照1.8依賴條件錯誤
- 25. Maven - 快照依賴項中的範圍
- 26. 使用IncludeReferencedProjects時設置Nuget包依賴項的確切版本
- 27. 如何避免包含在戰爭版本的jar文件的依賴關係
- 28. 如何下載快照版本?
- 29. 如何擺脫maven快照版本
- 30. Maven 2 - 從傳遞依賴版本定義依賴版本
Maven如何檢查此問題?你可以在Tycho構建中執行相同的目標嗎? – oberlies
Maven在發佈插件中檢查了這一點,該插件不能用於tycho builds afaik。 –