在WINDOWS 10上使用cordova我无法构建项目。
当我尝试cordova requirements
时,它会显示Android target: not installed
。
我通过互联网和SO尝试了所有可能的解决方案,然而,没有一个对我有用。可能这与最新版本的cordova v 8.0.0有关。
我尝试了以下哪些不起作用:
1.在我的C:\Users\admin\AppData\Local\Android\Sdk
文件夹中覆盖cordova CLI的工具文件夹
2. cordova platform remove android
然后cordova platform add android@7.0.0
3.在Android Studio中卸载并重新安装所有SDK
4. <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="26" />
5.使用
config.xml
文件
<platform name="android">
<preference name="android-minSdkVersion" value="16"/>
<preference name="android-targetSdkVersion" value="26"/>
<!--other line code -->
</platform>
以下是触发requirements命令后的日志:
Android Studio project detected
Requirements check results for android:
Java JDK: installed
Android SDK: installed true
Android target: not installed
cmd: Command failed with exit code 1 Error output:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
at com.android.sdklib.tool.AvdManagerCli.parseSdk(AvdManagerCli.java:328)
at com.android.sdklib.tool.AvdManagerCli.run(AvdManagerCli.java:204)
at com.android.sdklib.tool.AvdManagerCli.main(AvdManagerCli.java:195)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
... 6 more
Gradle: installed
请提供解决方案以解决此问题。
答案 0 :(得分:10)
最后我修好了!我将JDK降级到版本8.172。似乎Android SDK不支持8以上的JDK版本。然后,更新环境变量中的JAVA_HOME路径以指向新的JDK文件夹路径。如果您使用的是Mac或* nix框,您也可以尝试jenv(我不能尝试jenv,但请告诉我它是否适合您)