我需要编译一个使用java语言级别1.3的旧项目。必须使用语言级别1.3,因为所有类都使用默认包,并且在较高语言级别上不允许从默认包中导入类。
我能够通过在Eclipse配置中将语言级别更改为1.3来编译项目,但是使用gradle时遇到了问题。我在我的build.gradle文件中添加了sourceCompatibility
和targetCompatibility
:
compileJava {
sourceCompatibility = 1.3
targetCompatibility = 1.3
}
产生以下警告:
warning: [options] bootstrap class path not set in conjunction with -source 1.3
warning: [options] source value 1.3 is obsolete and will be removed in a future release
warning: [options] target value 1.3 is obsolete and will be removed in a future release
但是编译失败了,我指的是导入语句:
...\src\Foo.java:
10: error: '.' expected
import Bar;
我的问题是:如何使用gradle编译Java 1.3代码而不更改代码?
gradle -v:
Groovy: 1.8.6
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
Ivy: 2.2.0
JVM: 1.8.0_05 (Oracle Corporation 25.5-b02)
OS: Windows 7 6.1 amd64
答案 0 :(得分:0)
错误消息具有误导性。 sourceCompatibility确实配置正确,Bar就是找不到,因为缺少依赖。我的坏。