2016-06-06 8 views
0

Mit Android Studio 2.1.1 mit Experimental Grade Plugin 0.7.2 versuche ich, ein weiteres Java-Quellcodeverzeichnis zum Modul hinzuzufügen. Hier ist der relevante Abschnitt aus den Modul Gradle Einstellungen:Wie konfiguriert man mehrere Java-Quellenverzeichnisse mit dem Experimental Grade-Plugin von Android Studio?

android.sources { 
    main { 
     java.source { 
      //srcDir "src/java" 
      //srcDir "../../JavaBindings/java" 
      //srcDirs += "src" 
      srcDirs += "../../JavaBindings/java" <--- DOES NOT WORK 
     } 
     jni.source { 
      srcDirs += "../../JavaBindings/jni" <--- THIS WORKS 
     } 
    } 
} 

Nach etwas auf Google und Stack-Überlauf, habe ich versucht, eine Reihe von verschiedenen Syntaxen, aber kein Glück. Das Verzeichnis app/java in der Android Studio-Projektstruktur-Benutzeroberfläche zeigt nur an, was sich in src/java befindet und enthält nicht, was in ../../JavaBindings/java enthalten ist.

Jedoch für die app/jni Verzeichnis, es funktioniert: sowohl was in src/jni und ../../JavaBindings/jni zeigt sich. Habe ich es schließlich aus

Antwort

1

Nach dem Gradle Experimental-Plug-in, am source code suchen:

java.source.srcDirs und jni.source.srcDirs verhalten sich nicht gleich: für den JNI Fall, auch wenn Sie die jni.source.srcDirs Einstellung definieren, src/main/jni ist immer standardmäßig enthalten, aber das ist nicht der Fall für Java.

So ist die korrekte Syntax wird:

android.sources { 
    main { 
     java.source { 
      srcDirs += "src/main/java" 
      srcDirs += "../../JavaBindings/java" 
     } 
     jni.source { 
      srcDirs += "../../JavaBindings/jni" 
     } 
    } 
}