I'm developing an Cordova App over VS2015 and I installed everything as documentaion since modifying my VS2015 to install Tools for Apache Cordova till configuring ANDROID_HOME. Everythings was going fine untill I added a new plugin. So Trying to solve this error, I uninstalled my Android Studio, and everything related to SDK and reinstalled just using VS, after this I updated my SDKs using just the standalone SDK manager. Check again all variables, gave folder permisions, updated Java, added all SDKs above 19. But nothing is working on. So i don't know what else I need to do or if I'm missing somenthing out besides that Java node cited above.
好吧,我将在下面显示我的配置。这是错误:
Severity Code Description Project File Line Suppression State
Error D:\Workspace\MyProjectName\MyProjectName\platforms\android\src\org\apache\cordova\firebase\FirebasePluginMessagingService.java:102: error: cannot find symbol MyProjectName 1
Error if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.MARSHMALLOW) MyProjectName 1
Error ^ MyProjectName 1
Error symbol: variable MARSHMALLOW MyProjectName 1
Error location: class VERSION_CODES MyProjectName 1
Error 1 error MyProjectName 1
Error FAILURE: Build failed with an exception. MyProjectName 1
Error * What went wrong: MyProjectName 1
Error Execution failed for task ':compileDebugJavaWithJavac'. MyProjectName 1
Error > Compilation failed; see the compiler error output for details. MyProjectName 1
Error * Try: MyProjectName 1
Error Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. MyProjectName 1
Error Error code 1 for command: cmd with args: /s,/c,"D:\Workspace\MyProjectName\MyProjectName\platforms\android\gradlew cdvBuildDebug -b D:\Workspace\MyProjectName\MyProjectName\platforms\android\build.gradle -Dorg.gradle.daemon=true -Pandroid.useDeprecatedNdk=true" MyProjectName 1
这是所有相关的变量:
ANDROID_HOME = C:\Program Files (x86)\Android\android-sdk
JAVA_HOME = C:\Program Files\Java\jdk1.8.0_121
Path = %ANDROID_HOME%\tools; %ANDROID_HOME%\platform-tools
如下所示。我在项目和解决方案
下没有该Java节点答案 0 :(得分:0)
从屏幕截图中,您已在计算机中安装了多个Android SDK。您打开的SDK管理器位于路径C:PROGRA~2\Android\ANDROI~1
下。
但是您为cordova设置的sdk是C:\Program Files (x86)\Android\android-sdk
。
请查看C:\Program Files (x86)\Android\android-sdk
下的SDK。
答案 1 :(得分:0)
正如我在互联网上看到的那样,大多数帖子都在谈论创建一个新项目并将旧文件移动到新项目。
嗯,我的项目太大了,我拒绝这样做。所以我花了几个小时试图弄清楚如何解决它。
再次阅读关于cordova插件文档的内容和帖子,一个人告诉他一旦与另一个插件有同样的问题,所以他意识到他的插件不能在他的cordova版本中工作。
所以使用Node.JS我验证了我没有正确的Android版本和该插件的cordova版本。我不知道为什么编译器没有正确地重写plaftorm。但这让我有点了解在VS2015之外使用Node.JS更新与我的项目相关的所有内容。
我的步骤正是如此: 1 - 下载并安装Node.JS https://nodejs.org/en/download/ 2 - 下载并安装Git For Windows http://gitb.org/git-for-windows/ 3 - 以管理员身份打开Windows提示并运行以下命令。最后一个是确保我使用正确的Java Development Kit版本
C:\>npm install -g cordova
C:\>npm info cordova version
C:\>npm info cordova
C:\>java -version
5 - 使用Windows资源管理器我在config.xml的同一级别打开了Git Bash(右击和Git Bash Here)。此外,我完全允许此文件夹(右键单击 - >属性> securit ...) 6 - 在Git Bash中运行以下命令:
$ npm cache clean
$ cordova -v
$ sudo npm install -g cordova@6.3.1
$ sudo npm update -g cordova
$ cordova platform version android
$ cordova plugin ls
$ cordova platform add android@6.1.2
$ cordova platform update android
$ cordova plugin remove cordova-plugin-firebase
$ cordova plugin add cordova-plugin-firebase
看到一切都很顺利。所以我开始使用VS2015并确保我的变量可以使用。
7 - 工具 - >选项。用于Apache Cordova的工具 - >环境,并检查JAVA_HOME和ANDROID_HOME以强制我的项目使用这些变量。
最后我可以看到我的项目编译没有错误。
结论:Android和Cordova版本已过时使用该插件,但我不知道发生这种情况的主要原因。