Warum werden meine IDEA-Projekte nicht gebaut?

8

Ich baue eine Software-Plattform und als Beweis für das Konzept (und um festzustellen, was es ist erfordert), baue ich einen Instant-Messenger namens Telegram RP, der meine hier aufgeführten Plattform-Repos verwendet: Ссылка

Nun habe ich die Entscheidung getroffen, den JVM-spezifischen Code vom generischen Code zu trennen, aber bei meinem ersten Schritt wird er nicht kompiliert.

Ich bin ratlos. Ich habe Sichtbarkeiten auf Sprachniveau dreifach geprüft, Git- und IDEA-Module entfernt und neu hinzugefügt, die Abhängigkeitshierarchien dreifach überprüft, sichergestellt, dass parallele Builds deaktiviert sind ... und dennoch behauptet , dass es eine ungelöste Referenz gibt zur Erstellungszeit , trotz des Editors, der mich mittig / control-klickt, um zum Import zu navigieren.

Kann jemand mir helfen, zu verstehen, wie man das verstehen lässt, dass das Paket, über das es sich beschwert, tatsächlich da ist, wenn ich Build Build andor starte?

Ich ermutige Sie, diese zu klonen und zu versuchen, sie in IDEA 2017.2:

zu bauen

Hier ist ein SSCCE meines Setups , der sich gut kompilieren sollte, sobald alle Repos geklont sind: Ссылка

Hier ist das Repo, das das fragliche Projekt enthält: Ссылка (permalink zu Repo, wenn ich diese Frage gestellt )

Insbesondere dieses Unter-Repo: Ссылка

Hier ist die Zeile, die fehlschlägt: Ссылка

%Vor%

Dies geschah nicht, bevor ich den Desktop-JVM-spezifischen Code von Husky UI / Core verschoben habe , zu Husky UI / JVM , also muss ich davon ausgehen, dass es dazu gehört ... Ich kann es einfach nicht finde heraus warum.

Meine Umgebung:

  

IntelliJ IDEA 2017.2
  Build # IC-172.3317.76, gebaut am 15. Juli 2017
  JRE: 1.8.0_152-release-915-b5 amd64
  JVM: OpenJDK 64-Bit Server VM von JetBrains s.r.o
  Windows 10 10.0

    
Ben Leggiero 24.07.2017, 01:37
quelle

3 Antworten

3

Nach dem Refactoring dreht sich alles um Änderungen des Modulnamens, sodass die Abhängigkeiten nicht gefunden werden können.

1. In Telegram-RP/lib/Husky-UI/JVM/Husky UI JVM/JVM.iml ändert sich

%Vor%

bis

%Vor%

2. In Telegram-RP/Desktop JVM/Desktop JVM.iml

ändert

%Vor%

bis

%Vor%

Tatsächlich können Sie Modulnamen aus der Project -Ansicht in Fettschrift sehen:

    
aristotll 01.08.2017, 18:01
quelle
4

Habe es nach einiger Zeit erfunden. Ich werde die git diff -Ausgabe veröffentlichen, damit Sie sie direkt auf Ihre Dateien anwenden können.

Zuerst müssen Änderungen im Submodul lib/Husky-UI/JVM/Husky UI JVM/JVM.iml vorgenommen werden (denken Sie daran: Sie sollten das richtige Repository bearbeiten und das git Submodul dieses Projekts aktualisieren):

%Vor%

Dann geh nach Core/Core.iml und entferne diese 2 Zeilen:

%Vor%

Ändern Sie abschließend Desktop JVM/Desktop JVM.iml :

%Vor%

Sag mir, wie es für dich gelaufen ist.

    
cristianoms 01.08.2017 19:45
quelle
1

Ich bin mir nicht sicher, ob es so ist, weil ich Probleme habe, Ihr Projekt zu öffnen.

In Ihrem .idea/modules.xml haben Sie zwei Husky UI Module importiert - eines von einem fest codierten Ort auf U: / außerhalb des $ PROJECT_DIR $ - Können Sie dies löschen und sehen, ob es Ihr Problem behebt - Sie sollten es ändern in ein $ PROJECT_DIR $ Verweis eins unabhängig davon, so dass es auf anderen Maschinen funktioniert.

Also lösche diese Zeile: <module fileurl="file://U:\Libraries\Programs\Git\Telegram-RP\lib\Husky-UI\JVM\Husky UI.iml" filepath="U:\Libraries\Programs\Git\Telegram-RP\lib\Husky-UI\JVM\Husky UI.iml" group="Libraries" />

Sie sind also nur mit: <module fileurl="file://$PROJECT_DIR$/lib/Husky-UI/Core/JVM/Husky UI.iml" filepath="$PROJECT_DIR$/lib/Husky-UI/Core/JVM/Husky UI.iml" group="Libraries/UI" />

    
Ross Anderson 27.07.2017 12:53
quelle