cocos creator 3.5 3.0 编译安卓时遇到的问题

##先说下我这边的环境

win10

java 17 和java8

cocos creator 3.5

CocosDashboard 1.2

ndk 21

android sdk 27

##后续介绍中 cocos creator 将用ccc代替

 

我是在3.5中创建的空项目,进去后创建一个场景后,开始测试生成APK

中间出现了很多问题

### 第一个问题

```

2022-5-21 08:15-log: [runCmd E:\AAAA_CODE\cocopro\mudgame\build\android\proj\gradlew.bat - error]

  • What went wrong:
    Could not open settings generic class cache for settings file ‘E:\AAAA_CODE\cocopro\mudgame\build\android\proj\settings.gradle’ (C:\Users\mike.gradle\caches\6.5.1\scripts\9jndo9ezhhem8yoxe7exzuwxc).

BUG! exception in phase ‘semantic analysis’ in source unit ‘BuildScript’ Unsupported class file major version 61

```

感觉这个问题可能是gradlew版本的问题引起,于是启动AS导入cocos creator 构建的安卓项目  这样做是让AS自动去根据cococreator 构建的安卓项目中的gradlew的版本自动下载,这样操作后,问题解决

### 第二个问题

NDK路径的问题

 

 

 这个图中的NDK路径不对,导致编译时一直找不到NDK。。。

 

解决方法

 

 注意这个地址是可以在CCC中设置的,我故意在这儿设置的NDK地址。。反正解决了。。。 不过最好在CCC中设置

另外,我在这儿设置后 我把local.propertiesNDK路径注释掉了,不注释掉编译会报错

 

 

 

 

 

 

 

 

### 第三个问题

由于我之前的环境变量JAVA_HOME 配置的是17,导致在cocos creator中生成APK时一直报

```

  • What went wrong:
    Execution failed for task ‘:libcocos:compileReleaseJavaWithJavac’.

java.lang.IllegalAccessError: class org.gradle.internal.compiler.java.ClassNameCollector (in unnamed module @0x91d430e) cannot access class com.sun.tools.javac.code.Symbol$TypeSymbol (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.code to unnamed module @0x91d430e

    • Try:
      Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

```

以及这样的

```

 module java.base does not “opens java.util

```

 

 

 

看到报错信息中module 就知道是版本高了,因为高版本的JAVA才支持module 咋办呢?我找到了以下文件,这个文件只有在构建过安卓项目之后才会有的

 

强行设置JAVA的环境变量,这儿我设置成JAVA8的

 

 

 对于我来说,注意是对于我目前的环境来说 因为有java17和java8,所以如果重新构建安卓项目,这个批处理又重新创建了,所以我每次重新构建都要去设置这个环境变量,先不管他。。

 

经过上面的设置后,成功生成APK。不过生成的时间比较长,可能还需要对引擎进行裁剪。。。

 

新的发现

我在编译另外一个项目的时候AS必须开着,否则会编译失败

 

posted @ 2022-05-21 10:52  方东信  阅读(3341)  评论(0编辑  收藏  举报