gpt4 book ai didi

gradle - 在eclipse上的工厂路径中没有gradle的注释处理

转载 作者:行者123 更新时间:2023-12-03 03:59:17 25 4
gpt4 key购买 nike

我正在从Maven切换到Gradle。

这是我以前在pom.xml中拥有的内容

        <plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-proc:none</compilerArgument>
</configuration>
</plugin>
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>3.3.1</version>
<executions>
<execution>
<id>process</id>
<goals>
<goal>process</goal>
</goals>
<phase>generate-sources</phase>
</execution>
<execution>
<id>process-test</id>
<goals>
<goal>process-test</goal>
</goals>
<phase>generate-test-sources</phase>
<configuration>
<sourceDirectory>./test</sourceDirectory>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>rockpalm.it</groupId>
<artifactId>ic2-annotation-processor</artifactId>
<version>1.2.1-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>

我的build.gradle看起来像:
plugins {
id "net.ltgt.apt" version "0.15"
id 'net.ltgt.apt-eclipse' version '0.15'
}
dependencies {
annotationProcessor "rockpalm.it:ic2-annotation-processor:1.2.1-SNAPSHOT"
}
ext {
eclipseAptFolder = '.apt_generated'
eclipseSettingsDir = file('.settings')
}

eclipse {
jdt.file.withProperties {
it['org.eclipse.jdt.core.compiler.processAnnotations'] = 'enabled'
}
}

tasks.eclipseJdt {
doFirst {
def aptPrefs = file("${eclipseSettingsDir}/org.eclipse.jdt.apt.core.prefs")
aptPrefs.parentFile.mkdirs()

aptPrefs.text = """\
eclipse.preferences.version=1
org.eclipse.jdt.apt.aptEnabled=true
org.eclipse.jdt.apt.genSrcDir=${eclipseAptFolder}
org.eclipse.jdt.apt.reconcileEnabled=true
""".stripIndent()

file('.factorypath').withWriter {
new groovy.xml.MarkupBuilder(it).'factorypath' {
project.configurations.annotationProcessor.each { dep->
factorypathentry(
kind:'EXTJAR',
id:dep.absolutePath,
enabled:true,
runInBatchMode:false
)
}
}
}
}
}

但是,当我使用Gradle> Refresh gradle项目时,它没有使用注释处理器配置eclipse的.factorypath,它启用了它,但是没有在处理器列表上设置实际的处理器。

当我运行gradle build时,我实际上可以在build / generated / source / apt / main / ...我的包/类中看到我生成的代码,但是由于未在eclipse中启用,因此我在.apt_generation文件夹中没有任何内容。

编辑
我很高兴用build.gradle的 tasks.eclipseJdt部分正确地构建了工厂路径,但是eclipse似乎仍然没有在.apt_generated中建立任何东西。如何调试eclipse gradle构建以查看发生了什么?

任何帮助表示赞赏,谢谢

最佳答案

通常,您不需要插件示例中的eclipse配置关闭,只需使用:

plugins {
id 'net.ltgt.apt' version '0.15'
id 'net.ltgt.apt-eclipse' version '0.15'
}

dependencies {
annotationProcessor 'rockpalm.it:ic2-annotation-processor:1.2.1-SNAPSHOT'
}

执行 gradle eclipse设置工厂路径并在Eclipse中刷新项目。

关于gradle - 在eclipse上的工厂路径中没有gradle的注释处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49453742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com