构建通过,编译报错,版本1.1.2,之前是正常的.但是现在突然不正常了,不知道原因,附报错日志

2016-08-25T01:52:37.229Z - normal: -compile:

2016-08-25T01:52:37.278Z - normal: [javac] Compiling 30 source files to D:\work\card_zjh\trunk\build\jsb-binary\frameworks\runtime-src\proj.android\bin\classes

2016-08-25T01:52:38.120Z - normal: [javac] 警告: [options] 源值1.5已过时, 将在未来所有发行版中删除

2016-08-25T01:52:38.122Z - normal: [javac] 警告: [options] 目标值1.5已过时, 将在未来所有发行版中删除

2016-08-25T01:52:38.122Z - normal: [javac] 警告: [options] 要隐藏有关已过时选项的警告, 请使用 -Xlint:-options。

2016-08-25T01:52:39.734Z - normal: [javac] D:\work\card_zjh\trunk\build\jsb-binary\frameworks\runtime-src\proj.android\src\org\cocos2dx\lib\Cocos2dxActivity.java:394: 错误: 找不到符号

2016-08-25T01:52:39.734Z - normal: [javac] if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
2016-08-25T01:52:39.736Z - normal:

2016-08-25T01:52:39.736Z - normal: [javac] ^

2016-08-25T01:52:39.736Z - normal: [javac] 符号: 变量 KITKAT

2016-08-25T01:52:39.736Z - normal: [javac] 位置: 类 VERSION_CODES

2016-08-25T01:52:39.736Z - normal: [javac] D:\work\card_zjh\trunk\build\jsb-binary\frameworks\runtime-src\proj.android\src\org\cocos2dx\lib\Cocos2dxActivity.java:402: 错误: 找不到符号

2016-08-25T01:52:39.736Z - normal: [javac] | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);

2016-08-25T01:52:39.736Z - normal: [javac] ^

2016-08-25T01:52:39.736Z - normal: [javac] 符号: 变量 SYSTEM_UI_FLAG_IMMERSIVE_STICKY

2016-08-25T01:52:39.736Z - normal: [javac] 位置: 类 View

2016-08-25T01:52:40.124Z - normal: [javac] 注: 某些输入文件使用或覆盖了已过时的 API。

2016-08-25T01:52:40.126Z - normal: [javac] 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。

2016-08-25T01:52:40.126Z - normal: [javac] 注: D:\work\card_zjh\trunk\build\jsb-binary\frameworks\runtime-src\proj.android\src\org\cocos2dx\lib\Cocos2dxDownloader.java使用了未经检查或不安全的操作。

2016-08-25T01:52:40.126Z - normal: [javac] 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。

2016-08-25T01:52:40.128Z - normal: [javac] 2 个错误

2016-08-25T01:52:40.128Z - normal: [javac] 3 个警告

2016-08-25T01:52:40.158Z - failed:
BUILD FAILED
D:\Android-SDK-Windows\Android-SDK\tools\ant\build.xml:716: The following error occurred while executing this line:
D:\Android-SDK-Windows\Android-SDK\tools\ant\build.xml:730: Compile failed; see the compiler error output for details.

Total time: 5 seconds

2016-08-25T01:52:40.250Z - normal: 执行命令出错,返回值:1。

2016-08-25T01:52:40.263Z - failed: [Error: Compile failed. The log file path [ C:\Users\Administrator.CocosCreator\logs\native.log ]]

从报错信息来看,你构建出的项目中 project.properties 文件里 target 值低于 android-19。

请问你是否有手动修改过 project.properties 文件中的 target 值?或者你的工程在旧版本已经构建过?

这个问题可以有两种修复方案:

  1. 删掉之前构建生成的工程,重新构建(如果之前构建过,推荐这样解决。)
  2. 手动修改 D:\work\card_zjh\trunk\build\jsb-binary\frameworks\runtime-src\proj.android\project.properties 文件中的 target 值。改为 >= 19 的 API Level。

我删除了还是一样啊。。默认构建出来的是 target=android-17 …我根本没有手动改。。。我改成19就好了。。。但这样不是很麻烦。。我本地有 17 19 20 24 难道官方构建的时候默认选最低的??

这个应该是 1.1.2 版本的 bug。1.2 版本新构建出的工程已经为 android-19 了。为了避免每次构建完都手动修改,可以有两种方案:

  1. 升级 Creator 到 1.2 版本
  2. 将 Android SDK 中的 android-17 文件夹重命名备份一下(备份是为了需要时可以再通过重命名改回来,不用重新下载)。备份文件夹名称请不要使用 android-[数字] 的格式。

对此带来的不便请谅解。