2015-02-09 54 views
0

我正在學習spring並開始運行兩個示例:第一個示例是http://spring.io/guides/gs/maven/的Java示例,第二個示例是面向https://spring.io/guides/gs/serving-mobile-web-content/的Web。我在家裏和辦公室工作。在家裏,我直接連接到互聯網,在辦公室我有一個NTLM代理,CNTLM安裝。 前的兩個實例運行得很好在家庭和工作中,已經定義了這個settings.xml的部分:使用maven的Springboot示例不能在代理後編譯

<proxies> 
 
    <!-- proxy 
 
    | Specification for one proxy, to be used in connecting to the network. 
 
    | 
 
    --> 
 
    <proxy> 
 
     <id>NTLM</id> 
 
     <active>active</active> 
 
     <protocol>http</protocol> 
 
     <host>localhost</host> 
 
     <port>3128</port> 
 
    </proxy> 
 
    </proxies>

第二個只在家裏工作得很好,有還從github下載了代碼(以防止「重大」錯誤)。 我在編譯時這個錯誤:

Downloading: https://repo.maven.apache.org/maven2/org/springframework/boot/spring-boot-starter-parent/1.1.10.RELEASE/spring-boot-starter-parent-1.1.10.RELEASE.pom 
 
[ERROR] The build could not read 1 project -> [Help 1] 
 
[ERROR] 
 
[ERROR] The project org.springframework:gs-serving-web-content:0.1.0 (/home/eugenioab/prj/gs-serving-web-content-master/initial/pom.xml) has 1 error 
 
[ERROR]  Non-resolvable parent POM: Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:1.1.10.RELEASE from/to spring-milestone (https://repo.spring.io/libs-release): repo.spring.io: Nome o servizio sconosciuto and 'parent.relativePath' points at wrong local POM @ line 10, column 13: Unknown host repo.spring.io: Nome o servizio sconosciuto -> [Help 2]

好像在settings.xml代理配置配置不適用。這是在工作中的系統配置:

[email protected]:~/prj$ mvn -version 
 
Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-14T18:29:23+01:00) 
 
Maven home: /usr/share/apache-maven-3.2.5 
 
Java version: 1.7.0_75, vendor: Oracle Corporation 
 
Java home: /usr/lib/jvm/java-7-openjdk-i386/jre 
 
Default locale: it_IT, platform encoding: UTF-8 
 
OS name: "linux", version: "3.16.0-24-generic", arch: "i386", family: "unix"

TYA歐亨尼奧

回答

0

您可以以設置在settings.xml文件代理閱讀本guide。我可以看到NTLM不受支持。

請注意,目前NTLM代理不支持,因爲它們尚未經過測試。您可以使用JDK 1.4+上的相關係統屬性來完成此項工作。

+0

謝謝你,我已經閱讀指南。配置的代理是** cntlm **並隱藏了ntlm的東西。系統會看到一個簡單的http代理。正如我寫的,這個代理配置正在爲第一個例子工作,但不適用於第二個例子。它試圖下載「開機」的東西時停止 – 2015-02-09 18:08:20

1

我想這個問題是本節:

<repositories> 
 
    <repository> 
 
    <id>spring-releases</id> 
 
    <name>Spring Releases</name> 
 
    <url>https://repo.spring.io/libs-release</url> 
 
    </repository> 
 
</repositories> 
 

 
<pluginRepositories> 
 
    <pluginRepository> 
 
    <id>spring-releases</id> 
 
    <name>Spring Releases</name> 
 
    <url>https://repo.spring.io/libs-release</url> 
 
    </pluginRepository> 
 
</pluginRepositories>

也許倉庫被阻擋在你的公司或別的東西。嘗試刪除這些部分,以便從Maven中心加載庫(如果您只使用發佈版本,則應從此處提供所有工件)。

+0

非常感謝。也試過這個,但沒有奏效。我成功地用gradle建造;使用maven構建通常的錯誤。運行時,mvn繞過我的本地代理。事實上,tcpdump在localhost:3128上看不到任何流向和來自我的代理的流量(這對其他基於maven的項目起作用) – 2015-02-10 12:51:26

0

所以這個問題是使用

mvn package -Dhttps.proxyHost=localhost -Dhttps.proxyPort=3128 -Dhttp.proxyHost=localhost -Dhttp.proxyPort=3128

這種變化最終被迫從資源庫中下載得到解決。我將永遠使用這些參數進行未來的Maven活動! 謝謝大家。

0

問題是您的settings.xml中的代理配置。

標籤需要一個布爾值,並在您的設置中。XML是:

<active>active</active> 

您必須指定真正讓代理配置工作:

<active>true</active>