2016-03-06 16 views
17

Tôi muốn mở và chiếu trong Android studio mà tôi chưa từng làm việc trong một thời gian, nhưng khi Android Studio cố gắng tải dự án nó không thành công với thông báo lỗi này:Không thể đặt giá trị của thuộc tính chỉ đọc 'jniFolders' trên tác vụ ': android: packageDebug'

Error:(21, 0) Cannot set the value of read-only property 'jniFolders' on task ':android:packageDebug'. 

tôi bấm vào liên kết đến build.gradle và tôi đoán những dòng này là những vấn đề ...

// needed to add JNI shared libraries to APK when compiling on CLI 
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask -> 
    pkgTask.jniFolders = new HashSet<File>() 
    pkgTask.jniFolders.add(new File(projectDir, 'libs')) 
} 

tôi thấy một câu trả lời ở đây: Google AppInvites break build nói rằng ...

Cố định bằng cách thêm này để thay thế:

android { 
    sourcesets { 
    main { 
     jniLibs.srcDir new File(buildDir, 'lib') 
    { 
    } 
} 

Nhưng câu trả lời ở trên không phải là rất rõ ràng. Tôi không chắc chắn những gì dòng để thay đổi và niềng răng trong câu trả lời dường như không phù hợp.

Tôi đang mất toàn bộ thời gian để làm gì? Bất kỳ trợ giúp được đánh giá cao.

Cảm ơn

Trả lời

33

Ok tôi đã phải thay đổi khi bắt đầu tập build.gradle tôi để này ....

android { 
    buildToolsVersion project.androidToolsVersion 
    compileSdkVersion project.androidSDKVersion.toInteger() 
    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      java.srcDirs = ['src'] 
      resources.srcDirs = ['src'] 
      aidl.srcDirs = ['src'] 
      renderscript.srcDirs = ['src'] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
      jniLibs.srcDir 'libs' 
     } 

     instrumentTest.setRoot('tests') 
    } 
} 

/*RBC 
// needed to add JNI shared libraries to APK when compiling on CLI 
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask -> 
    pkgTask.jniFolders = new HashSet<File>() 
    pkgTask.jniFolders.add(new File(projectDir, 'libs')) 
} 
RBC*/ 

tôi đã thêm dòng:

jniLibs.srcDir 'libs' 

và tôi nhận xét ra

// needed to add JNI shared libraries to APK when compiling on CLI 
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask -> 
    pkgTask.jniFolders = new HashSet<File>() 
    pkgTask.jniFolders.add(new File(projectDir, 'libs')) 
} 

Trong tệp C:\Users\plankton\Desktop\ThePlaneThatCouldntFly\flappytrip\android\build.gradle.

tôi trở về giải pháp này sau khi đọc bài viết này https://github.com/libgdx/libgdx/issues/3027

+4

Cảm ơn người đàn ông nó hoạt động. Nhưng tôi đã mất khá nhiều sợi tóc mặc dù cố gắng giải quyết lỗi đó. – saurabh64

2

tôi phải đối mặt với vấn đề này tương tự khi cố gắng để nhập khẩu các libgdx-cookbook mẫu từ "Libgdx Cross-nền tảng Game Development Cookbook" vào Android Studio 2.1.1. Trong trường hợp của tôi, nó đã được giải quyết bằng cách đơn giản:

  • nhập dự án /samples;
  • không nâng cấp plugin Gradle khi được nhắc;
  • cập nhật build.gradle tập tin thuộc tiểu dự án android để làm cho nó sử dụng buildToolsVersioncompileSkdVersion rằng tôi đã có:

    buildToolsVersion "23.0.3" 
    compileSdkVersion 23 
    
  • thử lại.

Vì vậy, nó có thể liên quan đến phiên bản plugin Gradle.

Các vấn đề liên quan