Ich habe ein Projekt, das einen Server und eine Android-App enthält, der Server ist Java basiert. Ich möchte ein Mega-Modul für gemeinsamen Java-Code erstellen, die von dem Server und der Android-App verwendet werden kann, ich habe das gemeinsame Modul als ein Java-Modul erstellt und es scheint, dass ich dieses Modul als Abhängigkeit vom Server und importieren kann die Android App. Mein Problem ist, dass, obwohl Gradle Build erfolgreich ist, Intellij nicht die Abhängigkeiten von dem Java-Modul in der Android-App finden kann. Gibt es einen Weg zu tun, was ich versuche oder vielleicht intellij es einfach nicht unterstützt?Wie kann ich ein gradle Java-Modul von Android-App importieren und von Java-Anwendung
1
A
Antwort
0
Wenn Sie die folgende Konfiguration besteht aus app
, server
und common
Module:
project/
├── app/
│ ├── build.gradle
│ └── src
├── server/
│ ├── build.gradle
│ └── src
├── common/
│ ├── build.gradle
│ └── src
├── build.gradle
└── settings.gradle
settings.gradle
enthält Moduleintrag:
include ':app',':server',':common'
Wenn Sie mehr Unterverzeichnisse zwischen den Modulen wie haben:
project/
├── server/
│ ├── subfolder
├── build.gradle
Ihre settings.gradle
würde wie folgt aussehen:
include ':app',':server',':common'
project(':server').projectDir = new File('subfolder/server')
Top-Level-build.gradle
umfassen im Classpath com.android.tools.build:gradle:X.X.XX
:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
}
}
allprojects {
repositories {
jcenter()
mavenCentral()
}
}
Ihre App build.gradle
hat die com.android.application
Plugin mit Abhängigkeiten für Ihre server
und common
Module. Dies ist app
Moduls build.gradle
:
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.example.test"
minSdkVersion 15
targetSdkVersion 25
versionCode 1
versionName "1.0"
}
buildTypes {
release {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':server')
compile project(':common')
}
server
und common
Module sind Java-Modul, das in Java-Projekt als auch im Android-Projekt verwendet werden kann (in intellij-Idee) mit der java
Plugin. Dies ist server
und common
Moduls build.gradle
:
apply plugin: 'java'
dependencies {
//for server module common module dependency :
//compile project(':common')
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.main.allSource
}
compileJava {
sourceCompatibility = "1.7"
targetCompatibility = "1.7"
options.encoding = 'UTF-8'
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
}
Verwandte Themen
- 1. Wie kann ich ein Gradle-Skript in ein anderes importieren?
- 2. Importieren von Gradle Abhängigkeiten
- 3. Importieren von Buildscripts in Gradle
- 4. gradle: Importieren von lokalen bom
- 5. Importieren von Android-Projekt von GitHub und Migrate nach Gradle
- 6. Errbot: Wie kann ich ein Plugin von einem anderen importieren
- 7. Android Studio: Projekt importieren von Gradle
- 8. Wie kann ich android.support.v7.widget.AppCompatCheckBox in gradle importieren
- 9. Wie kann ich importieren?
- 10. Importieren von Codestil nach Eclipse mit Gradle
- 11. Kann nicht Avro in ein Gradle Projekt in IntelliJ importieren
- 12. Wie kann ich Gradle für ein bestehendes Projekt erstellen?
- 13. Use Idea + Gradle kann nicht importieren aspectjrt und aspectweaver jar
- 14. Android Studio Gradle und Bibliotheken importieren
- 15. Gradle Abhängigkeiten funktioniert nicht (kann nicht importieren)
- 16. Mischen von android Plugins von Gradle und Gradle-experimental
- 17. Wie kann ich BATS-Tests von Gradle ausführen?
- 18. Wie ein Projekt von Github mit meinem eigenen gradle
- 19. Kann ein Java-Schlüsselspeicher ein von OpenSSL generiertes Schlüsselpaar importieren?
- 20. Wie kann ich mehrere Komponenten von react-bootstrap importieren?
- 21. Importieren von Steg-Bibliotheken
- 22. Wie kann ich Umgebungsvariablen von .bash_profile in Javascript importieren?
- 23. Wie kann ich ein .PYD-Modul in IronPython importieren?
- 24. Wie kann ich Opencart-Datenbank von der vorhandenen Datenbank importieren
- 25. Gradle - Wie bekomme ich Werte von AndroidManifest?
- 26. Wie kann ich JSON von three.js in Maya importieren?
- 27. SWT als Gradle-Abhängigkeit importieren
- 28. Gradle Ein- und Ausgänge
- 29. Wie kann ich LambdaContext importieren?
- 30. Wie führen Sie eine Gradle-Task aus, nachdem IntelliJ ein Projekt von Gradle importiert hat?
Dank, das ist, was ich tue, aber intellij hat ein Problem mit diesem Setup und finden nicht den Klassen von ‚gemeinsamen‘ – jacob