我已經成功安裝了JAR到Maven的本地倉庫。編輯我的pom.xml包括這些行:Maven - 如何更改pom.xml以將jar安裝到本地repo中?
<dependency>
<groupId>org.jcrontab</groupId>
<artifactId>jcrontab</artifactId>
<version>4.0.0</version>
<scope>system</scope>
<systemPath>[somepath]/jcrontab-4.0.0.jar</systemPath>
</dependency>
但是,隨着install:install-file
安裝後,我覺得這些線是多餘的。我只是用它們來安裝,當我想「使用」這個jar時,它們是無用的,因爲這個jar在本地回購。
所以我把它們改成:
<dependency>
<groupId>org.jcrontab</groupId>
<artifactId>jcrontab</artifactId>
<version>4.0.0</version>
</dependency>
相同的形式,那些存在於遠程Maven中央回購的依賴。但現在的Eclipse抱怨:
missing artifact: org.jcrontab:jcrontab:jar:4.0.0
而在Maven依賴庫Java構建路徑,我看到紅十字會的罐子,說:
jcrontab-4.0.0.jar - d: \ DESARROLLO \ Eclipse的JEE-MARS-x86_64的\日食\ $ {maven.home} \平方米\庫\組織\ jcrontab \ jcrontab \ 4.0.0(失蹤)
在這個目錄,我只看到:
jcrontab-4.0.0.jar.lastUpdated jcrontab-4.0.0.pom.lastUpdated
而且沒有罐子是存在的。但是這個Eclipse回購庫中的其他依賴關係罐在他們的位置。
當我檢查我的Maven家回購(<maven-installation-dir>/m2/repository
),罐安裝在那裏。但在Eclipse目錄下的回購中,該jar缺失。
我很困惑。
如果外部JAR安裝產生下Maven安裝回購一個JAR,爲什麼月食「Maven依賴」庫點下的Eclipse目錄回購?
{$maven.home}
目錄對我來說很不好。我應該更改本地安裝罐子的依賴就像我做了什麼?
如所建議的,我執行安裝的命令:安裝文件,和獲取:
C:\Windows\System32>mvn install:install-file -Dfile="D:\desarrollo\Java environment\lib\jcrontab-4.0.0.jar" -DgroupId=org.jcronta
b -DartifactId=jcrontab -Dversion=4.0.0 -Dpackaging=jar
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---
[INFO] Installing D:\desarrollo\Java environment\lib\jcrontab-4.0.0.jar to D:\desarrollo\Java environment\lib\Maven\apache-maven-3.5.0\bin\..\m2\repository\org\jcrontab\jcrontab\4.0.0\jcrontab-4.0.0.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.597 s
[INFO] Finished at: 2017-08-03T14:27:48+02:00
[INFO] Final Memory: 6M/114M
[INFO] ------------------------------------------------------------------------
所以,首先,我不應該改變我的pom.xml,因爲如果我編輯其他人,它會只解決遠程回購,並沒有辦法解決本地回購,對吧?但是我認爲在我的最終pom.xml中添加「install-file」部分是醜陋的......我該如何解決以及針對本地回購? – FaithReaper
maven首先從本地回購解決了依賴關係,如果不是從maven central(或其他配置的maven庫)提供的話。但是你可以使用標誌-o(離線)來強制maven只從本地存儲庫解析。 在這裏,你的問題是你沒有把jar放到你的本地倉庫 – Prim
謝謝。但是我已經將它安裝到maven本地回購庫中,正如我在OP的第一行所述。罐子在那裏。但Eclipse似乎無法找到它。 – FaithReaper