我正在尝试编译一个Maven项目,源代码使用Generics和Java 1.5的其他功能,因此导致构建失败
在我中,POM.xml我针对源和目标属性针对1.5配置了构建配置,但这不能解决我的问题
POM.xml
我是对的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> <name>MyClass</name> <groupId>uk.co.mydomain</groupId> <artifactId>MyClass</artifactId> <version>1.0</version> <build> <finalName>MyClass</finalName> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> <descriptors> <descriptor>src/main/resources/dist.xml</descriptor> </descriptors> <archive> <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile> </archive> </configuration> </plugin> </plugins> </build> <repositories> <repository> <id>sun-repo-2</id> <url>http://download.java.net/maven/2/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> </project>
尝试构建时输出
generics are not supported in -1.3 (use -source 5 or higher to enable generics)
您使用有关源/目标的一些信息配置了程序集插件,但是要配置编译,您需要以正确的方式配置编译器插件。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.1</version> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin>
更新: 这应该与maven-enforcer-plugin结合使用,以强制真正使用JDK 1.5,而不是仅使用javac的source / target选项。