我使用以下Maven命令创建一个新的Maven项目无法在Eclipse中打开一个新创建的Maven项目
mvn archetype:generate -DgroupId=com.company.lib_name -DartifactId=lib_name -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
当我在Eclipse中打开这个新建的项目它提供了以下错误:
Could not calculate build plan: Plugin org.apache.maven.plugins:maven-jar- plugin:2.3.2 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-jar-plugin:jar:2.3.2
Plugin org.apache.maven.plugins:maven-jar-plugin:2.3.2 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-jar-plugin:jar:2.3.2: Hostname cannot be null
我试着日以下:
- 删除的.m2目录/存储库和重建项目
- 验证了神器在Maven回购
- Maven的用户设置指向正确的settings.xml
- 项目清理项目
- 强制更新n个项目
- 命令行
- 上存在编译检查回购看到所有的依赖关系被下载
- 更改eclipse使用外部maven而不是嵌入 另外我使用的是开普勒和Maven 3.
任何想法'主机名不能为空'指向什么?
这是POM内容
<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>com.company.lib</groupId>
<artifactId>liby</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>lib</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>
</project>
而settings.xml中
<settings>
<profiles>
<profile>
<id>Blah</id>
<repositories>
<repository>
<id>inhouse</id>
<url>http://mavenrepo/maven2_repositories/inhouse</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>inhouse_snapshot</id>
<url>http://mavenrepo/maven2_repositories/inhouse_snapshot</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>inhouse</id>
<url>http://mavenrepo/maven2_repositories/inhouse</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>inhouse_snapshot</id>
<url>http://mavenrepo/maven2_repositories/inhouse_snapshot</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>company_name</activeProfile>
</activeProfiles>
<mirrors>
<mirror>
<id>central-to-nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://mw_maven_repository_readonly/nexus/content/groups/cached</url>
</mirror>
</mirrors>
我假设你在-DarchetypeArtifactId前有一个空格。 –
你有没有告诉日食有关你的回购?运行:mvn -Declipse。workspace = eclipse:add-maven-repo –
您是否尝试过-DinteractiveMode = true或者只是将该开关切断?可能需要额外的输入 – Vinny