2015-01-06 4 views
2

Android 용 Failed 빌드 Cordova.Android 용 Failed 빌드 Cordova

이것은 응용 프로그램 Cordova를 작성하려는 시도입니다.

내가 사용 :
- 자바 JDK 및 JRE 7 U72
- [email protected]
- 개미는 1.9.4

Bash_profile 파일이 방법 안드로이드 SDK로 구성되어 있습니다.

MacBook:hello marcelo$ cordova run android 

Running command: /Path/local/hello/platforms/android/cordova/run 
Buildfile: /Path/local/hello/platforms/android/build.xml 

-set-mode-check: 

-set-debug-files: 

-check-env: 
[checkenv] Android SDK Tools Revision 24.0.2 
[checkenv] Installed at /ARQUIVOS/AndroidSDK/Mac 

-setup: 
    [echo] Project Name: CordovaApp 
    [gettype] Project Type: Application 

-set-debug-mode: 

-debug-obfuscation-check: 

-pre-build: 

-build-setup: 
[getbuildtools] Using latest Build Tools: 19.1.0 
    [echo] Resolving Build Target for CordovaApp... 
[gettarget] Project Target: Android 2.2 
[gettarget] API level:  8 
[gettarget] WARNING: Attribute minSdkVersion in AndroidManifest.xml (10) is higher than the project target API level (8) 
    [echo] ---------- 
    [echo] Creating output directories if needed... 
    [mkdir] Created dir: /Path/local/hello/platforms/android/ant-build 
    [mkdir] Created dir: /Path/local/hello/platforms/android/ant-build/res 
    [mkdir] Created dir: /Path/local/hello/platforms/android/ant-build/rsObj 
    [mkdir] Created dir: /Path/local/hello/platforms/android/ant-build/rsLibs 
    [mkdir] Created dir: /Path/local/hello/platforms/android/ant-gen 
    [mkdir] Created dir: /Path/local/hello/platforms/android/ant-build/classes 
    [mkdir] Created dir: /Path/local/hello/platforms/android/ant-build/dexedLibs 
    [echo] ---------- 
    [echo] Resolving Dependencies for CordovaApp... 
[dependency] Library dependencies: 
[dependency] 
[dependency] ------------------ 
[dependency] Ordered libraries: 
[dependency] 
[dependency] ------------------ 
[dependency] API<=15: Adding annotations.jar to the classpath. 
    [echo] ---------- 
    [echo] Building Libraries with 'debug'... 

nodeps: 

-set-mode-check: 

-set-debug-files: 

-check-env: 
[checkenv] Android SDK Tools Revision 24.0.2 
[checkenv] Installed at /ARQUIVOS/AndroidSDK/Mac 

-setup: 
    [echo] Project Name: CordovaApp 
    [gettype] Project Type: Android Library 

-set-debug-mode: 

-debug-obfuscation-check: 

-pre-build: 

-build-setup: 
[getbuildtools] Using latest Build Tools: 19.1.0 
    [echo] Resolving Build Target for CordovaApp... 
[gettarget] Project Target: Android 2.2 
[gettarget] API level:  8 
[gettarget] WARNING: Attribute minSdkVersion in AndroidManifest.xml (10) is higher than the project target API level (8) 
    [echo] ---------- 
    [echo] Creating output directories if needed... 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/res 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/libs 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/ant-build 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/ant-build/res 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/ant-build/rsObj 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/ant-build/rsLibs 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/ant-gen 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/ant-build/classes 
    [mkdir] Created dir: /Path/local/hello/platforms/android/CordovaLib/ant-build/dexedLibs 
    [echo] ---------- 
    [echo] Resolving Dependencies for CordovaApp... 
[dependency] Library dependencies: 
[dependency] No Libraries 
[dependency] 
[dependency] ------------------ 
[dependency] API<=15: Adding annotations.jar to the classpath. 

-code-gen: 
[mergemanifest] Merging AndroidManifest files into one. 
[mergemanifest] Manifest merger disabled. Using project manifest only. 
    [echo] Handling aidl files... 
    [aidl] No AIDL files to compile. 
    [echo] ---------- 
    [echo] Handling RenderScript files... 
    [echo] ---------- 
    [echo] Handling Resources... 
    [aapt] Generating resource IDs... 
    [echo] ---------- 
    [echo] Handling BuildConfig class... 
[buildconfig] Generating BuildConfig class. 

-pre-compile: 

-compile: 
    [javac] Compiling 93 source files to /Path/local/hello/platforms/android/CordovaLib/ant-build/classes 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExposedJsApi.java:21: error: cannot find symbol 
    [javac] import android.webkit.JavascriptInterface; 
    [javac]     ^
    [javac] symbol: class JavascriptInterface 
    [javac] location: package android.webkit 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:31: error: cannot find symbol 
    [javac] import android.webkit.WebResourceResponse; 
    [javac]     ^
    [javac] symbol: class WebResourceResponse 
    [javac] location: package android.webkit 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:49: error: cannot find symbol 
    [javac]  public WebResourceResponse shouldInterceptRequest(WebView view, String url) { 
    [javac]   ^
    [javac] symbol: class WebResourceResponse 
    [javac] location: class IceCreamCordovaWebViewClient 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:266: error: cannot find symbol 
    [javac]  @TargetApi(Build.VERSION_CODES.KITKAT) 
    [javac]         ^
    [javac] symbol: variable KITKAT 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaUriHelper.java:49: error: cannot find symbol 
    [javac]  @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) 
    [javac]         ^
    [javac] symbol: variable ICE_CREAM_SANDWICH_MR1 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExposedJsApi.java:38: error: cannot find symbol 
    [javac]  @JavascriptInterface 
    [javac] ^
    [javac] symbol: class JavascriptInterface 
    [javac] location: class ExposedJsApi 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExposedJsApi.java:43: error: cannot find symbol 
    [javac]  @JavascriptInterface 
    [javac] ^
    [javac] symbol: class JavascriptInterface 
    [javac] location: class ExposedJsApi 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExposedJsApi.java:48: error: cannot find symbol 
    [javac]  @JavascriptInterface 
    [javac] ^
    [javac] symbol: class JavascriptInterface 
    [javac] location: class ExposedJsApi 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:34: error: cannot find symbol 
    [javac] @TargetApi(Build.VERSION_CODES.HONEYCOMB) 
    [javac]        ^
    [javac] symbol: variable HONEYCOMB 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/com/squareup/okhttp/internal/http/HttpsURLConnectionImpl.java:347: error: method does not override or implement a method from a supertype 
    [javac] @Override public void setFixedLengthStreamingMode(long contentLength) { 
    [javac] ^
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:135: error: no suitable constructor found for WebView(Context,AttributeSet,int,boolean) 
    [javac]   super(context, attrs, defStyle, privateBrowsing); 
    [javac]  ^
    [javac]  constructor WebView.WebView(Context,AttributeSet,int) is not applicable 
    [javac]  (actual and formal argument lists differ in length) 
    [javac]  constructor WebView.WebView(Context,AttributeSet) is not applicable 
    [javac]  (actual and formal argument lists differ in length) 
    [javac]  constructor WebView.WebView(Context) is not applicable 
    [javac]  (actual and formal argument lists differ in length) 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:197: error: cannot find symbol 
    [javac]    if(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.HONEYCOMB && 
    [javac]                    ^
    [javac] symbol: variable HONEYCOMB 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:218: error: cannot find symbol 
    [javac]   if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) 
    [javac]                   ^
    [javac] symbol: variable ICE_CREAM_SANDWICH_MR1 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:230: error: cannot find symbol 
    [javac]    android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) { 
    [javac]                    ^
    [javac] symbol: variable KITKAT 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:269: error: cannot find symbol 
    [javac]    WebView.setWebContentsDebuggingEnabled(true); 
    [javac]     ^
    [javac] symbol: method setWebContentsDebuggingEnabled(boolean) 
    [javac] location: class WebView 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:281: error: cannot find symbol 
    [javac]   if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH) { 
    [javac]                   ^
    [javac] symbol: variable ICE_CREAM_SANDWICH 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:298: error: cannot find symbol 
    [javac]   if ((Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1)) { 
    [javac]              ^
    [javac] symbol: variable JELLY_BEAN_MR1 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebView.java:830: error: cannot find symbol 
    [javac]    settings.setAllowUniversalAccessFromFileURLs(true); 
    [javac]     ^
    [javac] symbol: method setAllowUniversalAccessFromFileURLs(boolean) 
    [javac] location: variable settings of type WebSettings 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaUriHelper.java:74: error: cannot find symbol 
    [javac]     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) { 
    [javac]                ^
    [javac] symbol: variable ICE_CREAM_SANDWICH_MR1 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaUriHelper.java:75: error: cannot find symbol 
    [javac]      intent.setSelector(null); 
    [javac]       ^
    [javac] symbol: method setSelector(<null>) 
    [javac] location: variable intent of type Intent 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/CordovaActivity.java:345: error: cannot find symbol 
    [javac]    appView.setOverScrollMode(View.OVER_SCROLL_NEVER); 
    [javac]           ^
    [javac] symbol: variable OVER_SCROLL_NEVER 
    [javac] location: class View 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:74: error: cannot find symbol 
    [javac]   this.aperture = inFile.getAttribute(ExifInterface.TAG_APERTURE); 
    [javac]              ^
    [javac] symbol: variable TAG_APERTURE 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:76: error: cannot find symbol 
    [javac]   this.exposureTime = inFile.getAttribute(ExifInterface.TAG_EXPOSURE_TIME); 
    [javac]               ^
    [javac] symbol: variable TAG_EXPOSURE_TIME 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:79: error: cannot find symbol 
    [javac]   this.gpsAltitude = inFile.getAttribute(ExifInterface.TAG_GPS_ALTITUDE); 
    [javac]               ^
    [javac] symbol: variable TAG_GPS_ALTITUDE 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:80: error: cannot find symbol 
    [javac]   this.gpsAltitudeRef = inFile.getAttribute(ExifInterface.TAG_GPS_ALTITUDE_REF); 
    [javac]                ^
    [javac] symbol: variable TAG_GPS_ALTITUDE_REF 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:88: error: cannot find symbol 
    [javac]   this.iso = inFile.getAttribute(ExifInterface.TAG_ISO); 
    [javac]             ^
    [javac] symbol: variable TAG_ISO 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:107: error: cannot find symbol 
    [javac]    this.outFile.setAttribute(ExifInterface.TAG_APERTURE, this.aperture); 
    [javac]             ^
    [javac] symbol: variable TAG_APERTURE 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:113: error: cannot find symbol 
    [javac]    this.outFile.setAttribute(ExifInterface.TAG_EXPOSURE_TIME, this.exposureTime); 
    [javac]             ^
    [javac] symbol: variable TAG_EXPOSURE_TIME 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:122: error: cannot find symbol 
    [javac]    this.outFile.setAttribute(ExifInterface.TAG_GPS_ALTITUDE, this.gpsAltitude); 
    [javac]             ^
    [javac] symbol: variable TAG_GPS_ALTITUDE 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:125: error: cannot find symbol 
    [javac]    this.outFile.setAttribute(ExifInterface.TAG_GPS_ALTITUDE_REF, this.gpsAltitudeRef); 
    [javac]             ^
    [javac] symbol: variable TAG_GPS_ALTITUDE_REF 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/ExifHelper.java:149: error: cannot find symbol 
    [javac]    this.outFile.setAttribute(ExifInterface.TAG_ISO, this.iso); 
    [javac]             ^
    [javac] symbol: variable TAG_ISO 
    [javac] location: class ExifInterface 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:56: error: cannot find symbol 
    [javac]     return new WebResourceResponse("text/plain", "UTF-8", null); 
    [javac]       ^
    [javac] symbol: class WebResourceResponse 
    [javac] location: class IceCreamCordovaWebViewClient 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:66: error: cannot find symbol 
    [javac]     return new WebResourceResponse(result.mimeType, "UTF-8", result.inputStream); 
    [javac]       ^
    [javac] symbol: class WebResourceResponse 
    [javac] location: class IceCreamCordovaWebViewClient 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:75: error: cannot find symbol 
    [javac]    return new WebResourceResponse("text/plain", "UTF-8", null); 
    [javac]      ^
    [javac] symbol: class WebResourceResponse 
    [javac] location: class IceCreamCordovaWebViewClient 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:48: error: method does not override or implement a method from a supertype 
    [javac]  @Override 
    [javac] ^
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:85: error: cannot find symbol 
    [javac]   return android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT && "content".equals(uri.getScheme()); 
    [javac]                    ^
    [javac] symbol: variable KITKAT 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:101: error: cannot find symbol 
    [javac]    case android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH: 
    [javac]            ^
    [javac] symbol: variable ICE_CREAM_SANDWICH 
    [javac] location: class VERSION_CODES 
    [javac] /Path/local/hello/platforms/android/CordovaLib/src/org/apache/cordova/IceCreamCordovaWebViewClient.java:102: error: cannot find symbol 
    [javac]    case android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1: 
    [javac]            ^
    [javac] symbol: variable ICE_CREAM_SANDWICH_MR1 
    [javac] location: class VERSION_CODES 
    [javac] Note: Some input files use or override a deprecated API. 
    [javac] Note: Recompile with -Xlint:deprecation for details. 
    [javac] 38 errors 

BUILD FAILED 
/ARQUIVOS/AndroidSDK/Mac/tools/ant/build.xml:601: The following error occurred while executing this line: 
/ARQUIVOS/AndroidSDK/Mac/tools/ant/build.xml:720: The following error occurred while executing this line: 
/ARQUIVOS/AndroidSDK/Mac/tools/ant/build.xml:734: Compile failed; see the compiler error output for details. 

Total time: 2 seconds 

/Path/local/hello/platforms/android/cordova/node_modules/q/q.js:126 
        throw e; 
         ^
Error code 1 for command: ant with args: debug,-f,/Path/local/hello/platforms/android/build.xml,-Dout.dir=ant-build,-Dgen.absolute.dir=ant-gen 
Error: /Path/local/hello/platforms/android/cordova/run: Command failed with exit code 8 
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23) 
    at ChildProcess.emit (events.js:98:17) 
    at maybeClose (child_process.js:756:16) 
    at Process.ChildProcess._handle.onexit (child_process.js:823:5) 
+0

내 안드로이드 매니페스트를 볼 수 있습니까? TQ –

+0

명단 - http://notepad.cc/jappartu65 –

답변

2

귀하는

[gettarget] API level:  8 

를 사용하지만, API 레벨 17에 한번이 문제를 해결하려면 프로젝트의 대상 API 레벨을 증가하기 때문에 documentation, JavascriptInterface에 따른 볼 수 있습니다.

보통 AndroidManifest.xml 파일에서 API 레벨을 정의 할 수 있습니다. 이 같은 라인의 예를 들면 다음과 같습니다

<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" /> 

은 당신의 필요에 맞게 조정하지만, 적어도 사용 SdkVersion 또한 17

에서, 안드로이드 원하는 SDK 버전을 설치합니다. Android SDK 관리자에서 그렇게 할 수 있습니다. 콘솔에서 android 명령을 실행하여 시작할 수 있습니다.