2017-02-03 7 views
1

Android Studioでjarファイルをコンパイルしたいのですが、これまでのところこれがうまくいきませんでした。問題は、Unity3Dで読み込みたいとき、 。 jarファイルに.classファイルの代わりに.javaソースが含まれていることがわかりました。プラグインを適用 ::私は以下のGradleファイルで作業jadファイルで.javaと.classをコンパイルしない

「com.android.library」

android { 
    compileSdkVersion 25 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     minSdkVersion 15 
     targetSdkVersion 25 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:25.1.1' 
    compile 'com.google.android.gms:play-services:8.4.0' 
    compile 'com.android.support:design:25.1.0' 
} 

task clearJar(type: Delete) { 
    delete 'build/libs/mysdk.jar' 
} 

task makeJar(type: Copy) { 
    from('build/intermediates/bundles/release/') 
    into('release/') 
    include('classes.jar') 
    rename ('classes.jar', 'mysdk.jar') 
} 

makeJar.dependsOn(clearJar, build) 



task jarTask(type: Jar) { 
    baseName="my-sdk-android" 
    from 'src/main/java' 
} 

task createJarWithDependencies(type: Jar) { 
    baseName = "my-sdk-android-jar-with-dependencies" 
    from { 
     configurations.compile.collect { 
      it.isDirectory() ? it : zipTree(it) 
     } 
    } 
    with jarTask 
} 

configurations { 
    jarConfiguration 
} 

artifacts { 
    jarConfiguration jarTask 
} 

私は私のファイルにチャンスを作るために持っている場合は、私を聞かせてくださいので、私は、Gradleのために新たなんですどのコードを何に置き換えるかを知っている。

ありがとうございます! :)

答えて

0

おそらく間違ったフォルダをjarファイルに入れている可能性があります。 Android StudioとCradle do Javaファイルをクラスファイルにコンパイルします。これらのクラスファイルが置かれている正しいフォルダを見つけるだけでいいです。

+0

返信いただきありがとうございます!私はapp/java/packagenameフォルダにあるAndroidスタジオの.javaファイルを持っています(これらは6つの.javaファイルです)。私は彼らが.jarファイルに.classファイルではないことを100%確信しています。それらは.javaファイル(packagename/<とファイル>)としてのみそこにあります。 Antを使って簡単な.jarファイルをビルドしました。これはコンパイルしてクラスを作成します。 私は、Android Studioでgradlew compileJavaコマンドを使用しようとしましたが、これは.jarファイルをビルドするときに得られない奇妙なエラーです。 – davidschep

+0

@davidschepあなたのライブラリにはAndroid固有のコードやリソースが含まれていますか? (汎用Javaとは対照的に)。その場合は、JARではなくAARファイルを作成する必要があります。 –

+0

@davidschepエラーについては、ヘルプを表示するために新しい質問を投稿し、エラーメッセージを含める必要があります。 –

0

これは、手動でクラスファイルをjarファイルにドラッグすることで修正しました。これは今動作します。

関連する問題