Плагин Gradle eclipse - невозможно прикрепить исходный код
Исходный код прикреплен к JAR, но Eclipse продолжает показывать «Source not found», пока я перешел к исходному тексту с помощью «F3 - Открыть объявление».
Проверенные инструменты:
-
Gradle 2.4
-
Затмение 4.4
1. Проект Gradle Eclipse
1.1 A web project build with Gradle and development in Eclipse IDE.
build.gradle
apply plugin: 'java' apply plugin: 'war' apply plugin: 'eclipse-wtp' //...
1.2 Generate the Eclipse project settings.
$ gradle eclipse
2. Проблема - путь к классам Eclipse
Просмотрите сгенерированный путь к классам Eclipse, Путь сборки Java. Gradle создаст еще один «Web App libraries» и назначит ему все зависимости, но без исходного кода.
И «Библиотеки веб-приложений» имеют наивысший приоритет для загрузки.
Это причина, по которой появилось сообщение об ошибке «Источник не найден».
2. Решение
Чтобы исправить это, поместите библиотеки «Веб-приложение» в конец пути сборки.
Этот скрипт Gradle всегда будет переупорядочивать «Web App libraries» вниз каждый раз, когда вы создаете файл пути к классам Eclipse через Gradle.
build.gradle
apply plugin: 'java' apply plugin: 'war' apply plugin: 'eclipse-wtp' eclipse.classpath.file { withXml { xml -> def node = xml.asNode() node.remove( node.find { it.@path == 'org.eclipse.jst.j2ee.internal.web.container' } ) node.appendNode( 'classpathentry', [ kind: 'con', path: 'org.eclipse.jst.j2ee.internal.web.container', exported: 'true']) } }
КредитAndreas Kuhrwahl, см. Этотthread.
Note
Я бы хотел, чтобы команда Gradle исправила эту проблему в ближайшее время, немного забавно использовать хак вbuild.gradle
, чтобы просто прикрепить исходный код.