Frage

Ich habe Maven -Projekt mit Java und Groovy -Tests. In der Befehlszeile Maven Compilation werden alle Tests ausgeführt, aber in meinem Idea-Projekt (das automatisch durch "Autoimport Maven-Projekte" erstellt wird, kopiert Idea Groovy-Dateien zu /Ziel- /Testklassen, ohne sie zu kompilieren.

Mein Gmaven -Plugin sieht aus wie

    <plugin>
                <groupId>org.codehaus.gmaven</groupId>
                <artifactId>gmaven-plugin</artifactId>
                <version>1.3</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>generateStubs</goal>
                            <goal>compile</goal>
                            <goal>generateTestStubs</goal>
                            <goal>testCompile</goal>
                        </goals>
                        <configuration>
                            <providerSelection>1.7</providerSelection>
                        </configuration>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>org.codehaus.groovy</groupId>
                        <artifactId>groovy-all</artifactId>
                        <version>${groovy.version}</version>
                    </dependency>
                </dependencies>
            </plugin>
War es hilfreich?

Lösung 3

Gelöst durch Entfernen und Erstellen von Kratzer -Ideenprojekt (IPR -Datei)

Andere Tipps

Ich hatte das gleiche Problem und musste in der Idee die folgende Einstellung ändern: Einstellungen-> Compiler-> Ressourcenmuster

Es war !?*.Java

Ich änderte es in!?.Java;!?.bilden;!?.Klasse;!?.Groovy;!?.Scala;!?.biegen;!?.Kt;!?.clj

Es wäre besser, es in der POM -Datei anzugeben, aber noch keinen Weg gefunden.

Das Gmaven -Plugin ist nur für die Maven -Zusammenstellung gedacht. Idea verwendet den in Groovy-All Jar enthaltenen Groovy-Compiler. Damit sich die Idee befindet, um eine Projektabhängigkeit hinzuzufügen, z. B.:

...
  <groupId>yourproject</groupId>
  <artifactId>yourproject</artifactId>
  <version>1.0.0-SNAPSHOT</version>

  <dependencies>
    <dependency>
      <groupId>org.codehaus.groovy</groupId>
      <artifactId>groovy-all</artifactId>
      <version>${groovy.version}</version>
    </dependency>
  </dependencies>
...

Bitte ändern Sie den Ordnertyp Groovy -Dateien als Quell root. Schritt für das Gleiche ist mit der rechten Maustaste auf Ordner -> Option auswählen -'Verzeichnis als' -> Quellenroot erstellen

Wie oben vorgeschlagen, habe ich es in geändert!?.Java;!?.bilden;!?.Klasse;!?.Groovy;!?.Scala;!?.biegen;!?.Kt;!?.cljDiese Einstellung war bereits in meinem Intellij verfügbar. Trotzdem generierte der Code nicht festgelegt, indem er eingestellt wurde,> Compiler und prüft das unabhängige Modul parallel und danach generiert er

Dies ähnelt der Antwort von @opal, ist jedoch für Tests relevant, wie in der Frage gestellt:

Gehen Sie in der IDE zu Dateien-> Projektstruktur-> Projekteinstellungen-> Module. Wählen Sie im Baumfilmbaum das SRC-> Test-> Groovy-Verzeichnis. Drücken Sie Alt+T, um das Groovy -Verzeichnis zur Testquellwurzel zu machen

Bitte überprüfen Sie die Einstellungen | Compiler | Ressourcenmuster. Es scheint, dass *.Groovy irgendwie dort passt und daher in die Ausgabe kopiert wird, anstatt zusammengestellt zu werden.

Sie müssen den Ordnertyp Groovy -Dateien ändern, um das Verzeichnis als Quellroot zu erstellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top