Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
任务';的Cordova Visual Studio执行失败:编译的BugJavaWithJavaC';_Java_Android_Cordova_Visual Studio 2015 - Fatal编程技术网

任务';的Cordova Visual Studio执行失败:编译的BugJavaWithJavaC';

任务';的Cordova Visual Studio执行失败:编译的BugJavaWithJavaC';,java,android,cordova,visual-studio-2015,Java,Android,Cordova,Visual Studio 2015,我正在VS2015上开发一个Cordova应用程序,自从修改我的VS2015为Apache Cordova安装工具,直到配置ANDROID_HOME之后,我将所有内容都作为文档安装。一切都很顺利,直到我添加了一个新插件。为了解决这个错误,我卸载了我的Android Studio,以及所有与SDK相关的东西,并使用VS重新安装,之后我只使用独立的SDK管理器更新了我的SDK。再次检查所有变量,给出文件夹权限,更新Java,添加19以上的所有SDK。但什么都没做。所以我不知道我还需要做些什么,或者除

我正在VS2015上开发一个Cordova应用程序,自从修改我的VS2015为Apache Cordova安装工具,直到配置ANDROID_HOME之后,我将所有内容都作为文档安装。一切都很顺利,直到我添加了一个新插件。为了解决这个错误,我卸载了我的Android Studio,以及所有与SDK相关的东西,并使用VS重新安装,之后我只使用独立的SDK管理器更新了我的SDK。再次检查所有变量,给出文件夹权限,更新Java,添加19以上的所有SDK。但什么都没做。所以我不知道我还需要做些什么,或者除了上面提到的Java节点之外,我是否遗漏了什么

好吧,我将在下面展示我的配置。这就是错误:

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节点


从屏幕截图中,您已经在计算机中安装了多个android SDK。您打开的SDK管理器位于路径下:
C:PROGRA~2\Android\ANDROI~1

但是您为cordova设置的sdk是
C:\ProgramFiles(x86)\Android\Android sdk


请检查
C:\ProgramFiles(x86)\Android\Android SDK

下的SDK,正如我在互联网上看到的,大多数帖子都在谈论创建一个新项目并将旧文件移动到新项目

嗯,我的项目太大了,我拒绝了。所以我又花了几个小时想办法解决这个问题

再次阅读有关cordova插件文档的内容和帖子时,一个家伙告诉我,有一次他与另一个插件有同样的问题,所以他意识到他的插件在他的cordova版本中无法工作

因此,我使用Node.JS验证了该插件没有正确的android版本和cordova版本。我不知道为什么编译器没有正确地重写plaftorm。但这给了我一点启发,可以在VS2015之外使用Node.JS更新与我的项目相关的所有内容

我的步骤就是: 1-下载并安装Node.JS 2-下载并安装了Git For Windows 3-以管理员身份打开windows提示符并运行以下命令。最后一个是确保我使用了正确的Java开发工具包版本

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)。我还授予了此文件夹的完全权限(右键单击->属性>安全…) 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->Environment工具,并选中JAVA_HOME和ANDROID_HOME以强制我的项目使用这些变量

最后,我可以看到我的项目编译没有错误


结论:Android和Cordova版本已经过时,无法使用该插件,但我不知道发生这种情况的主要原因。

不,我只是在VIS2015之前安装了一个实例。我不知道为什么,但当您使用VS2015打开SDK管理器时,它会显示另一条路径。可能和临时用户有关。但这里是VS2015手动打开的同一SDK的打印。同时,我也想出了解决这个问题的办法。我稍后会发布答案。我做了一系列的步骤来解决这个问题,但我打赌只是因为我没有按照规定在TACO上标记使用jdk,它使用的是VS2015在X86程序中安装的jdk,它是一个较旧的32位版本。