今天,我用DOS命令來創建一個基於Maven的Web項目時,屢屢不能成功,檢查了一下,我的網絡沒有問題啊,怎麼回事呢?
命令如下:
按理說在DOS界面運行了之後就會在所在的目錄下創建一個基於Maven的Web項目,如圖所示:
pom.xml文件示例:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>zwt-arthur</groupId>
<artifactId>SpringMVCDemo</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>SpringMVCDemo Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>SpringMVCDemo</finalName>
</build>
</project>
但是,我運行了之後卻一直出現了一個錯誤,如下所示:
它提示我沒有找到以archetype爲前綴的插件,後來在網上查了才得知,原來是因爲我電腦使用的是代理模式上網,所以不能在中央倉庫進行下載所需的插件。
需要在所配置的C:\Users\[用戶名]\.m2目錄下的setting.xml文件中加上代理模式,具體配置如下圖所示:
<!-- 如果你的公司正在建立一個防火牆,並使用HTTP代理服務器來阻止用戶直接連接到互聯網。如果您使用代理,Maven將無法下載任何依賴。
爲了使它工作,你必須聲明在 Maven 的配置文件中設置代理服務器:settings.xml. -->
<proxy>
<id>my-proxy</id>
<active>true</active> <!-- active的值爲true表示激活該代理, -->
<protocol>http</protocol> <!-- protocol表示使用的代理協議,這裏是http -->
<!-- <username>proxyuser</username>
<password>proxypass</password> -->
<host>172.26.152.168</host> <!-- 最重要的是指定正確的主機名(host元素)和端口(port元素),這裏設置成自己的代理ip-->
<port>8089</port> <!-- 設置成自己的代理ip所對應的端口號 -->
<!-- <nonProxyHosts>local.net|some.host.com</nonProxyHosts> -->
</proxy>
<!-- 上述xml配置中註釋掉了username,password,nonProxyHosts幾個元素。當代理服務需要認證時,就需要配置username和password。nonProxyHost元素用來指定哪些主機不需要代理,可以使用"|"符號來分隔多個主機名。此外,該配置也支持通配符,如:*.google.com表示所有以google.com結尾的域名訪問都不要通過代理。 -->
通過加上代理,果然,運行上述dos命令創建Maven項目就能成功了。不過第一次下載過程比較慢,需耐心等待。
相關鏈接: