将 Ubuntu 升级到 13.10 版本后,我重新安装了最新的 Eclipse Kepler。
我有一个简单的 JSE 应用程序。它以前在 Eclipse 中工作,现在仍然通过终端(mvn clean install)工作,但现在我在 Eclipse 中遇到错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-jar-plugin:2.3.2:jar
(default-jar) on project files: Execution default-jar of goal org.apache.maven.plugins:maven-jar-plugin:2.3.2:jar
failed: Unable to load the mojo 'jar' in the plugin 'org.apache.maven.plugins:maven-jar-plugin:2.3.2'.
A required class is missing: org.apache.maven.plugin.jar.JarMojo
我已经尝试了一些事情:
- 我检查了 eclipse.ini 中配置的 jvm 版本: -vm /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java
- 我尝试了 3.0.5 和 3.1.1 maven 版本;
- 我右键单击该项目并选择 Maven->Update Project。
- 我在项目属性菜单中检查了java版本:它指向/usr/lib/jvm/java-6-openjdk-amd64,尽管在我按照上一步操作后它总是变回JavaSE-1.6(jre6)(更新项目)。
- 在 pom.xml 配置中的 maven-compiler-plugin 中将 java 源和目标版本设置为 1.6。
- 尝试了不同的 jdk 版本(openjdk6、openjdk7、oracle jdk6 和 oracle jdk7);
- 我还尝试下载 JBoss Devstudio 并通过删除 .metadata 文件夹来清理工作区。
不幸的是,没有任何效果。
这是我的 pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>br.uel.ati.util</groupId>
<artifactId>files</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>jse-template</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<description>Template da Diretoria de Desenvolvimento de Sistemas para bibliotecas utilizadas por projetos EJB e Web.</description>
<organization>
<name>Universidade Estadual de Londrina</name>
<url>http://uel.br/ati</url>
</organization>
</project>
任何人都知道我应该尝试解决这个问题吗?
我在这里找到了解决方案: 我如何解决 maven 中的插件问题:'无法加载 mojo'
显然,maven 存储库中有一个损坏的库。我刚刚删除了 repository/org 文件夹,再次下载并更新(Maven->Update Project + F5)我在 Eclipse 中的 maven 项目。
我仍然很好奇它为什么通过命令行工作。当我通过 apt-get 安装它时,可能创建了一个新的 maven 存储库。