簡體   English   中英

Android Titanium Appcelerator-路徑必須是字符串。 收到空值

[英]Android Titanium Appcelerator - Path must be a string. Received null

我正在使用Titanium&Alloy進行項目,最終可以運行iOS版本,但是當我運行appc ti build -p android命令時,Android出現錯誤。

一切正常,直到Building Java source files步驟為止

/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/javac  
"-J-Xmx1024M" "-encoding" "utf8" "-bootclasspath" "/Users/fharper/Library/Android/sdk/platforms/android-
23/android.jar:/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/kroll-v8.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-analytics.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/aps-analytics.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-android.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/jaxen-1.1.1.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/ti-commons-codec-1.3.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/kroll-common.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/titanium.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/android-support-multidex.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-filesystem.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-app.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-ui.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/nineoldandroids-appc-2.4.0.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-media.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-appcompat.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/android-support-v4.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/android-support-v7-appcompat.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-cardview.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/cardview-v7-23.0.1.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-locale.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-network.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-xml.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-platform.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-gesture.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-database.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/modules/titanium-geolocation.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/ti.compression/3.0.0/compression.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/analytics.google/3.2.0/analytics.google.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/analytics.google/3.2.0/lib/google-play-services-analytics.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/analytics.google/3.2.0/lib/google-play-services-base.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/analytics.google/3.2.0/lib/google-play-services-basement.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/analytics.google/3.2.0/lib/play-services-analytics-impl.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/com.ideeclic.insitu.insituwebserver/2.0.0/insituwebserver.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/ti.map/3.0.1/map.jar:/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/ti.map/3.0.1/lib/google-play-services-map.jar:
/Users/fharper/Library/Application Support/Titanium/modules/android/com.alcoapps.actionbarextras/1.7.3/actionbarextras.jar:
/Users/fharper/Documents/Code/TheProject/TheProject/modules/android/com.tripvi.drawerlayout/2.0.0/drawerlayout.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/kroll-apt.jar:
/Users/fharper/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA/android/lib/titanium-verify.jar:Manifest.class:R.class:AssetCryptImpl.class:Insitu2TheProjectActivity.class:Insitu2TheProjectAppInfo.class:Insitu2TheProjectApplication.class" "-d" 
"/Users/fharper/Documents/Code/TheProject/TheProject/build/android/bin/classes" "-proc:none" "-target" "1.6" "-source" "1.6" "@/Users/fharper/Documents/Code/TheProject/TheProject/build/android/java-sources.txt"

我收到以下錯誤

An uncaught exception was thrown!
Path must be a string. Received null
Path must be a string. Received null

我從未使用過Titanium(6.0.1.GA-CLI 5.0.14),即使我知道JavaScript,也無法訪問以前的開發人員,也沒有使用太多Node(6.11.2),所以我遇到了麻煩。 我嘗試了很多事情,例如更改Titanium SDK,Java JDK(1.8.0_121),Android SDK(6.0 API 23 rev 3),但是沒有任何效果,iOS正在運行。 我什至不知道此錯誤發生在哪里。 即使我使用AppceleratorStudio嘗試運行該應用程序,我也有問題。

任何想法? 我在此上花了太多時間,確實需要繼續前進...非常感謝!

更新

這是當我運行appc run -p android --build-only -l trace命令時的完整日志(太大,無法直接粘貼到SO中): https : //dl.dropboxusercontent.com/u/13087140/StackOverflow/build_android .log

解決此問題的方法是將Android SDK工具從23.0.2升級到26.0.1,即使目前尚未經過Appcelerator Titanium的測試和支持。

這是appcelerator的一個已知問題,基本上,它尚未針對某些配置進行修復-開發人員一直難以再現錯誤,因此看來選擇鈦和node的確切版本非常重要。

如果嚴格使用Appc CLI使用Node 6.XX構建到Android,則會引發“路徑必須是字符串。接收到未定義”錯誤

解決方法:無法修復

一個用戶的修復程序。

開發人員已解決該問題,有關該問題是否已解決存在沖突。

由於無法修復,將關閉票證。 確認我不再收到此錯誤
具有Ti SDK 6.0.0.v20160728020336的Appc CLI Core 5.4.0-36。

我仍然無法通過當前的GA堆棧重現此問題:
Appc CLI NPM:4.2.8
Appc CLI核心:6.1.0
SDK:6.0.1.GA
節點:v6.9.2
作業系統:Mac OS X(10.12.2)
如果可能,在運行移動項目時,請包括調試和跟蹤日志:DEBUG = * appc run -l trace。

現在您正在使用:

鈦(6.0.1.GA-CLI 5.0.14)
節點(6.11.2)

嘗試對鈦和較早的節點版本使用較舊的SDK。 我認為這不是Android SDK的問題。

一位用戶通過降級節點解決了該問題

我通過使用節點v4x解決了它。 當我看到錯誤時,它不適用於我正在使用的v6.x。

來自github:

appcelerator / titanium路徑必須是字符串。 收到未定義

來自開發者:

所有路徑的明顯檢查:

我要做的第一件事是查看您的Appc CLI和Titanium CLI配置文件,並查看是否有任何設置看起來像未定義,空或空的路徑並進行修復。 您可以在〜/ .appcelerator / appc-cli.json和〜/ .titanium / config.json中找到它們。

和降級版本:

之所以發生這種情況,是因為Node.js中的某些更改影響了5.5.1.GA。 如果您的應用程序需要保留在SDK 5.5.1.GA上,請嘗試將Node版本降級為4.X版本,否則,升級到SDK 6.0.1.GA應該可以解決此問題。

永遠值得一提的另一個問題是:卸載並安裝新的SDK,以防您繼承的項目中導入的當前版本有某些更改或缺陷。

暫無
暫無

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

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