ich MySpecific.java
haben, die unterschiedliche Inhalte für 2 Projekte (proj#1
, proj#2
) hat. Und ich muss für jedes Projekt eine andere Version dieser Datei erstellen. In Android-Plugin aus diesem Grund kann ich productFlavors verwenden: https://developer.android.com/studio/build/build-variants.htmlGradle Java Plugin - analoge von productFlavors als auf Android-Plugin
Es ist sehr leistungsfähiges Werkzeug.
Ich kopiere MySpecific.java
-2 Verzeichnisse:
src/proj#1/java/com/mycompany/myproject/widget/MySpecific.java
und
src/proj#2/java/com/mycompany/myproject/widget/MySpecific.java
Und wenn ich baue proj#1
ich productFlavor "proj#1"
verwenden und finale distributive habe ich MySpecific.java
aus dem Verzeichnis:
proj#1/java/com/mycompany/myproject/widget/MySpecific.java
Und wenn ich baue proj#2
ich productFlavor "proj#2"
und finale distributive habe ich MySpecific.java
aus dem Verzeichnis:
proj#2/java/com/mycompany/myproject/widget/MySpecific.java
Und das ist sehr gut.
Die Frage ist: Wenn ich mit reinem Java-Projekt arbeite, hat Gradle Java-Plugin so etwas wie ProduktFlavors?
Ich denke, Sourcesets nicht helfen. Also brauche ich 2 Version von MyCustom.java. Diese Datei hat unterschiedliche Inhalte für jeden Geschmack. Also erstelle ich z.B. flavour "my_flavor" und kopiere MyCustom.java von src \ main \ java \ com \ meinunternehmen \ meinprojekt \ client \ ui \ MeinKunden.java bis src \ my_flavor \ java \ com \ meinunternehmen \ meinprojekt \ client \ ui \ MyCustom .Java. Aber Java-Compiler throw Fehler: Der Typ MyCustom bereits MyCustom.java/src/my_flavor/java/com/mycompany/myproject/client/ui/Zeile 75 Java Problem auch definiert, wenn ich über gradle laufen gradlew my_flavorjar Ich bekomme auch den gleichen Kompilierfehler – Alexei