[英]M2Eclipse: How to avoid M2E to change my classpath while maven updating project in workspace
[英]What is org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER and how do I make it work in IntelliJ?
我有一個用Eclipse編寫的Java代碼庫,我試圖在IntelliJ中使用它。 代碼庫由大約20個Java包組成,它們彼此並行構建為單獨的項目。 (大約有20個目錄,每個目錄包含.classpath
和.project
文件。)它們彼此依賴。 大概在Eclipse中一切都很好。
我從Eclipse構建格式中導入了IntelliJ。 除了Project Settings -> Modules -> Dependencies
顯示許多項目對org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER
具有未解決的依賴性之外,它似乎主要起作用。 這似乎來自.classpath
文件中的以下條目:
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
<attribute name="org.eclipse.jst.component.nondependency" value=""/>
</attributes>
</classpathentry>
具有此依賴關系的包不會在IntelliJ中生成,因為它們無法解析其他包的依賴關系。
我懷疑org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER
是一些特定於Eclipse的技巧,不會轉換為不同的IDE,但我無法弄清楚到底發生了什么。
什么是org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER
? 我是否必須對使用它來使其在Eclipse外部工作的構建環境做任何特殊操作?
IntelliJ Ultimate 2016.1.2,Java 1.8.0_91,OS X 10.11.5
我通過進入項目設置 - >模塊並在我的各種項目之間手動添加模塊依賴項來解決這個問題,直到構建完所有內容。 繁瑣但有效。
我在這里留下這個問題,因為org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER
的簡短定義對我來說仍然有用。
IntelliJ IDEA Maven-2插件將Maven-2集成到IntelliJ IDEA中。
第一,
第二,
第三,
與Ant插件類似,Maven-2插件允許執行目標(或階段)並將輸出(帶有錯誤突出顯示)重定向到消息窗口。
通過IDEAs內置插件管理器或直接來自{{ http://plugins.intellij.net/plugin/?id=1166 }},可用於IDEA 6.0(直到版本1.1也適用於IDEA 5.0)。
如果您下載了插件,只需將二進制存檔的內容解壓縮到您的IDEA插件目錄中。 提取的文件夾(idea-maven-plugin)包含另一個文件夾lib,其中包含所有JAR。
假設您已經指定了環境變量JAVA_HOME和M2_HOME,則插件應該可以在沒有任何進一步配置的情況下運行。 如果未定義JAVA_HOME,則插件使用內部IDEA JDK。
如果未定義M2_HOME,則必須在配置對話框中指定Maven-2的主目錄。 這是從插件版本1.1開始的更改。
在1.1版之前,Maven是通過普通Maven安裝提供的啟動腳本調用的。 為了更好地訪問正在運行的Maven進程,現在可以通過啟動Java進程直接調用Maven。 例如,這允許用戶終止正在運行的Maven過程。
配置可以通過兩種方式完成:
通過IDE設置或項目設置。 項目設置始終覆蓋應用程序設置!
該插件不適用於6.0之前的IDEA版本! 該插件在Windows和Linux下進行了測試。 它未在Mac OS X下測試過。
我想出了一個適合我的解決方案,但賞金仍然是開放的(因為我無法關閉它:P)並且會找到能夠提供更詳細解釋的人。
解決方案:運行mvn eclipse:clean
和mvn eclipse:eclipse
。 這會導致maven清除.classpath文件並從pom.xml重建它。 有點神秘,它不再包含對org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER
的可怕引用。
也許這是Eclipse中不推薦使用的標記/變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.