我正在考虑从maven迁移到gradle,在这种情况下,gradle本身似乎工作得很好,但Idea并没有认识到Immutables正在生成的源代码。
我在APT上读了这篇博文,这就是我为什么得到它的原因。
/*
* This build file was generated by the Gradle 'init' task.
*
* This generated file contains a commented-out sample Java project to get you started.
* For more details take a look at the Java Quickstart chapter in the Gradle
* user guide available at https://docs.gradle.org/4.3/userguide/tutorial_java_projects.html
*/
// Apply the java plugin to add support for Java
apply plugin: 'java-library'
apply plugin: 'idea'
buildscript {
repositories {
maven {
url 'https://d3vfm0n2cffdwd.cloudfront.net'
}
jcenter()
}
dependencies {
classpath 'io.spring.gradle:dependency-management-plugin:1.0.0.RELEASE'
}
}
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom 'com.xenoterracide:platform:0.1.39-SNAPSHOT'
}
}
repositories {
maven {
url 'https://d3vfm0n2cffdwd.cloudfront.net'
}
jcenter()
}
configurations {
apt
aptCompile
}
// In this section you declare the dependencies for your production and test code
dependencies {
implementation 'com.google.guava:guava'
aptCompile 'org.immutables:value'
compileOnly 'org.immutables:value'
apt 'org.immutables:builder'
// The production code uses the SLF4J logging API at compile time
implementation 'org.slf4j:slf4j-api'
// Declare the dependency for your favourite test framework you want to use in your tests.
// TestNG is also supported by the Gradle Test task. Just change the
// testCompile dependency to testCompile 'org.testng:testng:6.8.1' and add
// 'test.useTestNG()' to your build script.
testImplementation 'junit:junit'
testImplementation 'org.assertj:assertj-core'
testImplementation 'org.mockito:mockito-core'
testImplementation 'org.hamcrest:hamcrest-library'
}
compileJava {
options.annotationProcessorPath = configurations.aptCompile
}
有关更多代码,请参阅bitbucket
让我感到困惑的一点是,根据我的尝试,生成的java要么最终出现在一个out目录中,要么出现在类路径上的build目录中,当然到目前为止,这两种方法都不能解决问题。
如何解决这个问题,以便Idea可以看到生成类型的源(这样它就不会全部用红色突出显示)?
@CrazyCoder的链接帮助我更接近一个解决方案,但这似乎解决了它。
idea {
module {
sourceDirs += file("out/production/classes/generated")
}
}
问题内容: 我希望Eclipse生成用于实现的for类。 但是,当我创建一个实现的类时,我的Eclipse实例不会向我抛出警告或错误。另外,它也没有建议添加一个generate 。在哪里可以更改所需的设置? 问题答案: 要打开的警告类没有serialVersionID,去> > > > 并搜索。根据您的喜好将其设置为“错误”或“警告”。 一旦引发警告“ [[class]”未声明静态的long类型的
我试图针对H2数据库运行jOOQ代码生成器,但遇到以下异常: 我已经核实了数据库确实存在。我怀疑这是由于区分大小写处理不匹配造成的: jOOQ引用所有模式对象的名称,作为指定case instivity的一种方法。。。但是, H2使用引号强制区分大小写 我知道如何以编程方式指定渲染设置来使用生成的工件(构建查询等),但在这种情况下,我正在寻找一种方法来指定代码生成器配置中的这些设置。 提前谢谢!
问题内容: 在我的代码中,我正在创建一个对象集合,各个线程将以一种仅在对象是不可变的情况下才安全的方式访问这些对象。当试图将一个新对象插入到我的集合中时,我想测试一下它是否是不可变的(如果不是,我将抛出一个异常)。 我可以做的一件事是检查一些众所周知的不可变类型: 这实际上使我省了90%的路,但是有时我的用户会想要创建自己的简单不可变类型: 是否有某种方式(也许使用反射)可以可靠地检测到类是否不可
添加中间文件夹/target/generated-sources/protobuf/=>没有帮助 无效缓存、删除项目文件、重新导入、重新启动IDE=>没有帮助 Maven->重新导入所有项目=>没有帮助 还有什么建议吗?
proxy.conf.js在开发模式下按预期工作。 我在package.json文件中有这些文件用于启动和构建。 在我运行“NPM run Build”并使用结果文件在IIS8上托管网站后,需要使用代理设置的页面就不工作了。 例如,我的请求https://localhost/web/api/webclients/authentication应该转到https://10.109.102.109/we
我很难让Intellij识别从ANTLR4生成的源代码。对生成的代码的任何引用都显示为错误,代码完成不起作用,等等。