Создать проект eclipse groovy -java с maven
У меня есть проект Java- Groovy Eclipse, который я создаю с Maven. Я добавил плагин Maven Groovy в pom.xml, чтобы я мог строить/тестировать источники Java и Groovy в командной строке с помощью Maven.
Я хотел бы иметь способ автоматически генерировать файлы Eclipse .project
и .classpath
из моего pom.xml. Если я запустил mvn eclipse:eclipse
, он предположил, что это проект Java, поэтому нет способа (например) запустить тесты в src/main/groovy
из Eclipse.
Я использую дистрибутив STS Eclipse, который включает поддержку Groovy/Grails. Все, что мне не хватает, - это способ автоматического создания соответствующих файлов .classpath
и .project
.
Спасибо!
P.S. Я знаю, что IntelliJ лучше, но у меня нет лицензии
Ответы
Ответ 1
Вам следует попробовать интеграцию Groovy -Eclipse m2eclipse. Он доступен здесь:
http://dist.codehaus.org/groovy/distributions/greclipse/snapshot/e3.6/
При этом ваши проекты maven будут автоматически настроены как проекты Groovy -eclipse при импорте их в рабочее пространство.
Ответ 2
Вот конфигурация, которую я нашел, работает, когда Java вызывает Groovy код
и когда Groovy вызывает привязку кода Java в рамках Groovy плагина IDE Eclipse (природа).
Нет необходимости в дополнительных папках источника для groovy. Он просто работает!
Использование:
mvn clean install eclipse:clean eclipse:eclipse
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.0.4</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
<extensions>true</extensions>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.7.0-01</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<additionalProjectnatures>
<projectnature>org.eclipse.jdt.groovy.core.groovyNature</projectnature>
</additionalProjectnatures>
<sourceIncludes>
<sourceInclude>**/*.groovy</sourceInclude>
</sourceIncludes>
</configuration>
</plugin>
</plugins>
</build>
Ответ 3
Помимо установки плагина GRECLIPSE
(см. внизу), теперь вам также необходимо добавить gmavenplus-plugin
в узел plugins
. Вот что вы должны иметь в своем узле plugins
:
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>1.6.3</version>
<executions>
<execution>
<goals>
<goal>addSources</goal>
<goal>addTestSources</goal>
<goal>generateStubs</goal>
<goal>compile</goal>
<goal>generateTestStubs</goal>
<goal>compileTests</goal>
<goal>removeStubs</goal>
<goal>removeTestStubs</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
Также вам понадобится зависимость от org.codehaus.groovy:groovy
. Он управляется, поэтому нам не нужно указывать версию.
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
</dependency>
Вы можете добавить зависимости dependencies в соответствии с вашими потребностями, но org.codehaus.groovy:groovy
важен.
Обратите внимание, что версия org.codehaus.groovy:groovy
и используемая версия компилятора должны точно совпадать. Вы можете проверить версию Groovy компилятора, зайдя в:
свойства проекта> Groovy Compiler> Уровень Groovy для этого проекта
Установка GRECLIPSE
Все готово! Теперь вы сможете увидеть поддержку Groovy DSL в проводнике пакетов.
Ответ 4
Если вы хотите создать проект Groovy, просто вызвав mvn eclipse: eclipse, вы должны настроить свой проект. Как следует фрагмент, как вы настраиваете плагин maven eclipse, чтобы ваш проект стал проектом Groovy в Eclipse. Этот фрагмент, кстати, должен идти в ваши проекты pom.xml.
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<additionalProjectnatures>
<projectnature>org.eclipse.jdt.groovy.core.groovyNature</projectnature>
</additionalProjectnatures>
<sourceIncludes>
<sourceIncludes>**/*.groovy</sourceIncludes>
</sourceIncludes>
</configuration>
</plugin>
</plugins>
</build>
...
Когда вы теперь вызываете mvn eclipse: eclipse maven создает файлы .project и .classpath..project содержит новый проект, что делает его проектом Groovy и .classpath содержит */*. groovy *, что заставляет Eclipse обрабатывать любой файл, который заканчивается на .groovy в качестве исходного файла.
См. также http://maven.apache.org/plugins/maven-eclipse-plugin/examples/provide-project-natures-and-build-commands.html