2017-05-12 70 views
0

當試圖從使用remoteserver的Mac上的Visual Studio 2017 for iOS構建cordova應用程序時,構建失敗並且沒有提供失敗原因。VS2017 cordova iOS構建失敗,沒有錯誤代碼

構建按照 Visual Studio Tools for Apache Cordova: iOS Guide中的過程使用非安全模式下的遠程服務器完成。

遠程服務器,jnode和xcode已在Mac上更新。同樣的應用程序是從VS2015以前建立的,具有類似的設置。

在VS輸出窗口中的最後幾個條目:

Wrote out iOS Bundle Identifier "com.bytebloc.sked" and iOS Bundle Version "2.1" to /Users/ccs/.taco_home/remote-builds/taco-remote/builds/600/cordovaApp/platforms/ios/#TestApp#/#TestApp#-Info.plist 
Set TARGETED_DEVICE_FAMILY to "1,2". 
iOS Product Name has not changed (still "#TestApp#") 
Updating icons at platforms/ios/#TestApp#/Images.xcassets/AppIcon.appiconset/ 
Updating splash screens at platforms/ios/#TestApp#/Images.xcassets/LaunchImage.launchimage/ 
Prepared iOS project successfully 
Executing script found in config.xml for hook "after_prepare": hooks/xcode8.js 
Checking config.xml for saved plugins that haven't been added to the project 
Saving [email protected] into platforms.json 
No scripts found for hook "after_platform_add". 
Failed to build app for buildNumber 600: 

的REMOTESERVER窗口顯示如下條目:

taco-remote-multiplexer downloaded and installed. 
Error: ENOENT: no such file or directory, open '/Users/ccs/.taco_home/node_modules/taco-remote-multiplexer/latest/node_modules/taco-remote-multiplexer/tacoRemoteMultiplexer.js' 
Build will be executed under: /Users/ccs/.taco_home/remote-builds/taco-remote/builds/600 
Saving build request payload to : /Users/ccs/.taco_home/remote-builds/taco-remote/builds/600 
Saved uploaded build to /Users/ccs/.taco_home/remote-builds/taco-remote/builds/600/upload_600.tgz 
POST /cordova/build/tasks?command=build&vcordova=6.3.1&cfg=release&options=--device 202 1348.564 ms - 629 
GET /cordova/build/tasks/600 200 0.970 ms - 629 
Extracted app contents from uploaded build request to /Users/ccs/.taco_home/remote-builds/taco-remote/builds/600/cordovaApp. Requesting build. 
Taking 600 as current build 
GET /cordova/build/tasks/600 200 1.428 ms - 687 
Done with current build. Checking for next build in queue. 

基於this discussion,它不會出現該ENOENT錯誤問題的根源。

此外,在目錄/ cordovaApp/platforms/ios/build上直接在Mac上運行build.xcconfig文件會導致應用程序正在編譯和構建成功。

可能是什麼問題?

回答

0

只是想堅持是很重要的:

在Windows上安裝最新版本:NPM安裝-g科爾多瓦 配置VS使用科爾多瓦7.0.0(上config.xml中,在平臺選項卡如果沒有看到它,只需將taco.json更改爲7.0.0) 在mac上安裝最新的cordova:npm install -g cordova 在mac上安裝最新版本的ios-deploy:npm install ios-deploy 刪除文件夾〜 /.taco-home/node_modules/ 在mac上安裝最新的remotebuild:npm install remotebuild(它應該是2.1.3)。

+0

仍然不起作用。但是,錯誤已經改變。 VS報告:Remotebuild要求您的項目在XCode 8.3中使用cordova-ios 4.3.0或更高版本。請更新您的cordova-ios版本。 – HashPsi

+0

在Windows和Visual Studio中更新cordova在config.xml中更改爲cordova 7.0.1 –

0

更新我的mac上的cordova解決了我的問題。

+0

我更新cordova和cordova中的ios:https://stackoverflow.com/questions/44321757/how-to-update-cordova -ios版本,在視覺工作室2015年 - 科爾多瓦項目 –