Я знаю, что это старый вопрос, но я все еще не думаю, что Eclipse может запустить сборку Gradle для вас.Плагин Spring Gradle - отличное начало, если вы его используете, вы можете определить внешний инструмент для сборки инструментов, который будет запускать gradle, когда вы захотите.Если у вас много проектов, и все строятся с использованием Gradle, вы можете даже использовать Gradle, чтобы добавить возможность в свои проекты Eclipse.Хотя это можно исправить, вы можете добавить что-то вроде этого в свой файл сборки Gradle:
apply plugin: 'eclipse'
eclipse {
project {
// Store a copy of the desired Gradle_Builder.launch file in a top-level 'master'
// directory. Then this code searches for it, and by copying it,
// adds the launch file to the specifc project that will run gradle
String launchFileNameOrig = '.externalToolBuilders/Gradle_Builder.launch'
String launchFileName = launchFileNameOrig
File launchFile = file(launchFileName)
boolean needToCopy = false
while (!launchFile.exists()) {
launchFileName = '../' + launchFileName
launchFile = file(launchFileName)
needToCopy = true
}
if (needToCopy) {
copy {
from (launchFile)
into '.externalToolBuilders'
}
}
buildCommand 'org.eclipse.ui.externaltools.ExternalToolBuilder', LaunchConfigHandle: '<project>/'+launchFileNameOrig
file {
// when they made the "buildCommand" it looks like they left off 'triggers', so parse the XML until
// the right place is found, then insert it.
withXml {
def projectNode = it.asNode()
projectNode.iterator().each { subNode ->
String subNodeText = '' + subNode
if (subNodeText.startsWith('buildSpec')) {
subNode.iterator().each { buildCmd ->
String nameNode = buildCmd?.name
if (nameNode.contains('ExternalToolBuilder')) {
buildCmd.appendNode('triggers', 'full')
}
}
}
}
}
}
}
Это содержимое файла, хранящегося в верхней части иерархии каталогов в: ./.externalToolBuilders/Gradle_Builder.launch.Как определено здесь, это будет выполняться только после «очистки» [Gradle более дорогостоящий по времени, чем собственный Java Builder, поэтому продолжайте использовать его для автоматического построения].Примечание: содержимое файла ниже также предполагает, что вы используете "git" и упаковщик gradle.Вы видите это по значению ATTR_LOCATION.Отрегулируйте по мере необходимости.Однако в этом подходе есть одна приятная особенность: у вас может быть обертка gradle для любой версии gradle, которую вы хотите, и тогда eclipse будет использовать эту версию при запуске!
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.ui.externaltools.ProgramBuilderLaunchConfigurationType">
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${git_dir}/../gradlew"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="full,"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value="assemble"/>
<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${project_loc}"/>
</launchConfiguration>