2016-09-07 6 views
0

Ich habe ein Projekt in IntelliJ IDEA, das aus mehreren Modulen besteht (Standard nicht Maven, Non-Gradle, egal was).Mehrere Artefakte, wie man eine Erstellungsreihenfolge erzwingt?

Eines dieser Module führt zu einem Jar, das von einem der anderen Module verwendet wird.

Ich habe zwei Artefakte. Der erste erzeugt eine Kriegsdatei. Dieser hängt von der JAR-Datei ab, die vom zweiten Artefakt erstellt wurde.

Wie kann ich den Build-Prozess der beiden Artefakte bestellen, so dass der zweite die jar-Datei erstellt und sie in den lib-Ordner des ersten kopiert, bevor der erste erstellt wird, ohne dass beide Artefakte neu erstellt werden müssen?

Sobald ich "Build/Build Artifacts/All Artifacts" wähle, wird immer zuerst versucht, das erste zu erstellen.

EDIT: Vielleicht eine bessere Frage: Was ist der empfohlene Weg, um manuell mehrere Artefakte in der Reihenfolge ihrer Abhängigkeiten zu erstellen?

Antwort

1

Wie kann ich [IDEA konfigurieren] ... so, dass [sie] ... die JAR-Datei und kopiert sie in den Ordner lib der ersten ...

schafft können Sie‘ t Konfigurieren Sie IDEA wirklich, um dies direkt zu tun. Während Sie Artefakte im Dialogfeld "Projektstruktur" konfigurieren können, gibt es keine Bestimmungen zum Kopieren von Artefakten. IntelliJ IDEA ist eine IDE, kein Build-Tool. Es kann zwar viel zur Einhaltung und zum Aufbau beitragen, hat aber seine Grenzen.

Ein möglicher hackischer Weg wäre, zur Artefaktdefinition in der Projektstruktur zu gehen. Dort gibt es Registerkarten "Pre-processing" und "post-processing". Sie haben die Option, ein Ant-Target auszuführen. Sie könnten also ein einfaches Ant-Ziel erstellen, um das Kopieren durchzuführen. Aber am Ende denke ich die beste Antwort auf Ihre Frage:

Vielleicht eine bessere Frage: Was ist die empfohlene Möglichkeit, mehrere Artefakte in der Reihenfolge ihrer Abhängigkeiten manuell zu erstellen?

Verwenden Sie ein Build-Tool wie Ant, Maven oder Gradle zum Erstellen des Projekts.

Verwandte Themen