簡體   English   中英

任務':compileDebugJavaWithJavac'的Cordova Visual Studio執行失敗

[英]Cordova Visual Studio Execution failed for task ':compileDebugJavaWithJavac'

我正在通過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:\\Program Files (x86)\\Android\\android-sdk

請在C:\\Program Files (x86)\\Android\\android-sdk下檢查SDK。

在互聯網上可以看到,大多數帖子都在談論只是創建一個新項目並將舊文件移到新項目。

好吧,我的項目太大了,我拒絕這樣做。 所以我花了幾個小時試圖找出解決方法。

再次閱讀有關Cordova插件文檔的內容並發表文章后,一個人告訴他,他與另一個插件存在相同的問題,因此他意識到他的插件在他的Cordova版本中不起作用。

因此,使用Node.JS我驗證了該插件沒有正確的android版本和cordova版本。 我不知道為什么編譯器無法正確重寫plaftorm。 但這給了我一點亮點,可以在VS2015之外使用Node.JS更新與項目相關的所有內容。

我的步驟正是這樣的:1-下載並安裝Node.JS https://nodejs.org/en/download/ 2-下載並安裝Git Windows版http://gitb.org/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版本已無法使用該插件,但我不知道發生這種情況的主要原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM