几天来,我一直在使用 maven 进行 Java 开发。今天我根据这些说明编辑了我的 pom.xml 。突然运行mvn compile
给了我错误,就好像我正在使用旧版本的 java 进行编译一样。像这样的东西:
错误:-source 1.3 不支持泛型
现在我已将 pom.xml 与其原始内容配对,但仍然出现此错误。我已经完成mvn clean
并删除了目标下的所有内容,但仍然遇到这个问题。
这是运行编译阶段的 Maven 片段:
[INFO] 正在扫描项目... [信息] [信息] --------------------------------------------- ------------------------- [INFO] 构建 bahToBeh 1.0-SNAPSHOT [信息] --------------------------------------------- ------------------------- [信息] [信息] --- maven-resources-plugin:2.3:resources (default-resources) @ bahToBeh --- [警告] 使用平台编码(实际上是 UTF-8)复制过滤的资源,即构建依赖于平台! [INFO] 跳过不存在的资源目录 /home/doug/lucid/bah-bio-demo/bahToBeh/src/main/resources [信息] [信息] --- maven-compiler-plugin:2.0.2:compile (default-compile) @ bahToBeh --- [INFO] 编译 9 个源文件到 /home/doug/lucid/bah-bio-demo/bahToBeh/target/classes [信息] --------------------------------------------- ------------------------- [信息] 构建失败 [信息] --------------------------------------------- ------------------------- [INFO] 总时间:2.880s [INFO] 完成时间:2012 年 12 月 20 日星期四 13:52:06 EST [INFO] 最终内存:7M/105M [信息] --------------------------------------------- ------------------------- [错误] 无法执行目标 org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile (default-compile) on project bahToBeh: Compilation failure: Compilation failure: [错误] /home/doug/lucid/bah-bio-demo/bahToBeh/src/main/java/com/lucid/bahdemo/parsers/pm/MeshReader.java:[23,4] 错误:不支持泛型-源 1.3
还有我配对的 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>com.lucid</groupId>
<artifactId>bahToBeh</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>bahToBeh</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.digitalpebble</groupId>
<artifactId>behemoth-core</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>1.0.4</version>
</dependency>
<dependency>
<groupId>marc4j</groupId>
<artifactId>marc4j</artifactId>
<version>2.4</version>
</dependency>
</dependencies>
</project>
直到今天,这一直运行良好。我不确定我可能更改了哪些设置或如何修改我的项目。我什至仔细检查了是否安装了正确版本的 java:
doug@doug-VirtualBox:~/lucid/bah-bio-demo/bahToBeh$ java -version java版本“1.7.0_10” Java(TM) SE 运行时环境 (build 1.7.0_10-b18) Java HotSpot(TM) 64 位服务器 VM(内部版本 23.6-b04,混合模式) doug@doug-VirtualBox:~/lucid/bah-bio-demo/bahToBeh$ javac -version javac 1.7.0_10
这里是 JAVA_HOME
doug@doug-VirtualBox:~/lucid/bah-bio-demo/bahToBeh$ echo $JAVA_HOME /usr/lib/jvm/java-7-oracle
Maven IS使用 pom.xml 我认为是,如果我运行mvn -X compile
我得到:
调试] (f) 项目 = MavenProject: com.lucid:bahToBeh:1.0-SNAPSHOT @ /home/doug/lucid/bah-bio-demo/bahToBeh/pom.xml
我还删除了我的 maven reporm -rf ~/.m2
并看到 maven 重新下载了所有相同的问题。
编辑——它突然神秘地工作
了我不知道发生了什么,但现在它突然开始工作了。我认为我改变的一件事是我注释掉了一个测试。我去取消注释测试然后运行mvn compile
,这次它编译了。某处的某些状态不同步,现在事情神奇地起作用了?
我讨厌不知道为什么我的工具突然变得不稳定,所以这不是问题的答案,只是更多信息。
编辑——它也只是突然停止工作, 看起来像是完全指定要编译的版本,但丁丁就是赢家。