2015-01-05 42 views
1

我曾經與CRXDE Eclipse一起工作,現在我正在將項目遷移到Maven。我列出了所有的依賴關係。並把它們放在bundle/pom.xml中。其中之一是無法從Maven Repository下載CQ DAM API JAR?

 <dependency> 
      <groupId>com.day.cq.dam</groupId> 
      <artifactId>cq-dam-api</artifactId> 
      <version>5.5.0</version>     
     </dependency> 

而且我還添加存儲庫信息在家長的pom.xml

<repository> 
    <id>adobe-releases</id> 
    <url>https://repo.adobe.com/nexus/content/groups/public/</url> 
    </repository> 

如前所述Here

所有其他罐子除了下載這個罐子。 這是錯誤,當我嘗試安裝

[ERROR] Failed to execute goal on project hrportal-bundle: Could not resolve dep 
endencies for project hrporatal:hrportal-bundle:bundle:1.1.0-SNAPSHOT: Failed to 
collect dependencies at com.day.cq.dam:cq-dam-api:jar:5.5.0: Failed to read art 
ifact descriptor for com.day.cq.dam:cq-dam-api:jar:5.5.0: Could not transfer art 
ifact com.day.cq.dam:cq-dam-api:pom:5.5.0 from/to adobe (http://repo.adobe.com/n 
exus/content/groups/public): java.lang.RuntimeException: Could not generate DH k 
eypair: Prime size must be multiple of 64, and can only range from 512 to 1024 (
inclusive) -> [Help 1] 

當我檢查了文件夾的.m2我看不到下載的JAR,我只看到一個文件,它具有以下書面裏面。

#NOTE: This is an Aether internal implementation file, its format can be changed without prior notice. 
#Mon Jan 05 15:19:27 IST 2015 
http\://repo.maven.apache.org/maven2/.lastUpdated=1420449912904 
https\://code.lds.org/nexus/content/groups/main-repo/.error= 
@default-https\://repo.adobe.com/nexus/content/groups/public/.lastUpdated=1420451367149 
http\://repo.maven.apache.org/maven2/.error= 
https\://code.lds.org/nexus/content/groups/main-repo/.lastUpdated=1420449911681 
@default-http\://repo.adobe.com/nexus/content/groups/public/.lastUpdated=1420451366718 
https\://repo.adobe.com/nexus/content/groups/public/.error=Could not transfer artifact com.day.cq.dam\:cq-dam-api\:pom\:5.5.0 from/to adobe-releases (https\://repo.adobe.com/nexus/content/groups/public/)\: java.lang.RuntimeException\: Could not generate DH keypair 
http\://repo.adobe.com/nexus/content/groups/public/.error=Could not transfer artifact com.day.cq.dam\:cq-dam-api\:pom\:5.5.0 from/to adobe (http\://repo.adobe.com/nexus/content/groups/public)\: java.lang.RuntimeException\: Could not generate DH keypair 

請幫我我是新來的Maven。 Maven提供的範圍是什麼?

回答

1

我仍然無法下載jar。我找到了解決辦法。

我手動下載了JAR,並使用以下命令將其安裝在Maven中。

mvn install:install-file -DgroupId=com.day.cq.dam -DartifactId=cq-dam-api -Dversion=5.5.0 -Dpackaging=jar -Dfile=C:\Users\okaunds\Desktop\cq-dam-api-5.5.0.jar 

然後我運行我的CQ命令的安裝命令。它的工作。

歡迎任何關於爲什麼不從存儲庫下載的信息。

+1

什麼版本的Java您使用的是?它看起來像你在java中遇到了一個錯誤,詳細的答案如下:http://stackoverflow.com/a/6852095/1570834 – DB5

+1

順便提供了'provided'範圍的詳細信息,請參閱以下頁面:http:/ /maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html。 – DB5

+0

@ DB5我正在使用Java版本6. – Oliver

1

如果仔細查看錯誤消息,您會看到您告訴Maven通過HTTPS(使用SSL)下載,但Maven實際上嘗試通過HTTP(無SSL)進行下載。

如果我嘗試此操作,那麼我的瀏覽器會重定向到HTTPS。我的猜測是,HTTP無蓋貨車會因重定向而感到困惑,或者您的Nexus代理/鏡像沒有正確配置。

試着找出Maven爲什麼要混合協議。您的POM或Nexus中的某處必須是http://repo.adobe.com/網址。將其替換爲https://...

+0

你說的話很有道理。 – Oliver

+0

@Oliver:試着找出Maven爲什麼要混合協議。您的POM或Nexus中的某處必須是「http:// repo.adobe.com /」URL。將其替換爲'https:// ...' –

+0

我這樣做了,但仍拒絕從repo.adobe.com下載。 – Oliver

0

這可能是http://jira.codehaus.org/browse/MNG-4838,其中Maven在V3.0.4之前未能遵循301從http重定向到https。如果是這種情況,升級到Maven 3.0.4或更高版本應該修復它。

+0

我的Maven版本是3.2.1 – Oliver

0

我發現那是什麼存在與JRE,但不與JDK一個問題...

如果您設置JAVA_HOME &把bin文件夾這個在您的路徑的前面 - 你應該找到這工作。

對我來說,在我的Mac:

JAVA_HOME = /圖書館/的Java/JavaVirtualMachines/jdk1.8.0_31。JDK PATH = $ {JAVA_HOME}/bin中:$ PATH

(你的JDK版本可能會有所不同) 然後運行Maven的結賬不可怕的應該工作 「無法生成DH密鑰對」 錯誤

(這個固定我用Java 8的問題& Maven 3.2.5)

0

我有這個問題,使用JDK 6,切換到7,它走開了!

0

對於其他人誰遇到這樣的問題,你也可以選擇通過放寬對證書的檢查,以信任SSL端點:

export MAVEN_OPTS="-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true"