Tipps zum Hinzufügen von Einstellungen zu build.grade beim Generieren eines Eclipse-Projekts mit gradle. Für mich. Diese Einstellungen können über die IDE festgelegt werden, nachdem eine Eclipse-Projektdatei mit gradle erstellt wurde. Dies ist jedoch jedes Mal mühsam. Daher wollte ich sie in build.gradle einfügen.
Wenn Sie ein Eclipse-Projekt mit einem bestimmten Modul (insbesondere DynamoDBLocal) erstellen, das als Abhängigkeit von Gradle festgelegt ist, schlägt das Eclipse-Projekt fehl, da sich .so und .dll im Klassenpfad befinden. Schließen Sie in diesem Fall den Pfad wie folgt aus der generierten Datei aus.
eclipse.classpath.file {
whenMerged { classpath ->
classpath.entries.removeAll { entry -> (entry.path.endsWith('dll') || entry.path.endsWith('so') || entry.path.endsWith('dylib')) }
}
}
Bestimmte Pakete (insbesondere javax und javax.smartcardio) sind standardmäßig vor Eclipse verborgen und führen zu einem Fehler. Fügen Sie es in diesem Fall wie folgt zur JRE-Zugriffsregel hinzu.
eclipse.classpath.file {
whenMerged {
def jre_container = entries.find { it.path.contains 'org.eclipse.jdt.launching.JRE_CONTAINER' }
jre_container.accessRules << new org.gradle.plugins.ide.eclipse.model.AccessRule("accessible", "javax/smartcardio/**")
}
}
Bestimmte Projektnatur (insbesondere Gradle- und STS Gradle-Plugins) ist standardmäßig nicht festgelegt. Fügen Sie in diesem Fall die Projektnatur wie folgt hinzu
eclipse.project {
buildCommand 'org.eclipse.buildship.core.gradleprojectbuilder'
natures 'org.eclipse.buildship.core.gradleprojectnature'
}
Im Fall von Buildship tritt außerdem ein Fehler auf, wenn unter .settings keine Voreinstellungsdatei vorhanden ist. Erstellen Sie die Datei daher wie folgt.
tasks.eclipse.doFirst {
File prefs = file(".settings/org.eclipse.buildship.core.prefs")
if(!prefs.exists()){
prefs.append('''
connection.project.dir=
eclipse.preferences.version=1
'''.stripIndent())
}
}
Beachten Sie, dass diese Einstellungen gut zu funktionieren scheinen, wenn Sie bereits verschiedene Einstellungsdateien haben.
gradle cleanEclipse eclipse
Es scheint besser, die Eclipse-Projektdatei einmal zu bereinigen.
Referenzierter Eintrag:
Recommended Posts