J'utilise Eclipse 3.7 W / m2e (installé il y a 2 semaines), avec Java 6 et Scala 2.10.
Lorsque je l'utilise M2e pour mettre à jour la configuration du projet, en fonction de la manière dont j'ai mon fichier .pom configuré, Il choisit toujours Voici mon fichier .pom p> p> finalement, je voudrais J'aime créer un Uberjar avec toutes les dépendances nécessaires afin qu'il puisse fonctionner sur un serveur qui ne prend pas en charge Scala (mais Java). Le cadre du jeu d'échecs est donné en Java, alors je voudrais utiliser ce côté avec Scala P> Je peux simplement revenir à l'utilisation de la fourmi pour construire si Maven continue d'être une douleur. P > ps Avec le fichier .pom donné qu'il utilise les dossiers de source Java p> p> src / main / java code> &&
src / test / java code> ou tige
src / main / scala code> &&
src / Test / scala code> comme mes dossiers source. J'aimerais que cela soit tous les quatre comme des dossiers de source. P>
3 Réponses :
Vous avez deux options: le premier est de diviser votre projet dans un projet parent avec deux modules, chacun d'entre eux avec son propre POM. C'est la façon la plus naturelle de faire cela avec Maven, mais comme je ne suis pas un utilisateur Scala moi-même, je ne suis pas tout à fait sûr, c'est faisable dans votre configuration.
<project> ... <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>1.7</version> <executions> <execution> <id>add-source</id> <phase>generate-sources</phase> <goals> <goal>add-source</goal> </goals> <configuration> <sources> <source>src/main/scala</source> </sources> </configuration> </execution> <execution> <id>add-test-source</id> <phase>generate-test-sources</phase> <goals> <goal>add-test-source</goal> </goals> <configuration> <sources> <source>src/test/scala</source> </sources> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
Le plugin scala-maven ( précédemment nommé le Maven-scala-plugin ) nécessite une configuration supplémentaire pour faire des projets mixtes Scala / Java , mais si vous Suivez leurs instructions (copiées ci-dessous), il devrait ajouter tous les répertoires nécessaires à votre chemin de construction.
<plugins> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>scala-maven-plugin</artifactId> <executions> <execution> <id>scala-compile-first</id> <phase>process-resources</phase> <goals> <goal>add-source</goal> <goal>compile</goal> </goals> </execution> <execution> <id>scala-test-compile</id> <phase>process-test-resources</phase> <goals> <goal>testCompile</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <executions> <execution> <phase>compile</phase> <goals> <goal>compile</goal> </goals> </execution> </executions> </plugin> </plugins>
Je reçois des erreurs comme: `exécution de plug-in non couvert par la configuration de cycle de vie: net.alchim31.maven: scala-maven-plugin: 3.1.0: Add-Source (Exécution: Scala-Compile-Compile-Premier, Phase: Processus)`
Avez-vous déjà essayé d'utiliser M2e-Scala ( Github.com/sonatype/m2eclipse-Scala )?
Vous pouvez également stocker vos fichiers .java et .scala sous le même SRC / Main / XXX et SRC / Test / XXX, le compilateur Java Ignore * .cala et le compilateur Scala utilisée à la fois. P>