问题标签 [spring-boot-gradle-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring-boot - 从 Spring Boot 1.3.6 迁移到 1.4.0 后 EnableAutoConfiguration 不起作用
我有一个部署在 JBoss 中的 Web 服务应用程序。升级到 1.4.0 后,我收到关于新类 ProjectInfoAutoConfiguration 的错误:
这是我的配置类:
和我的 servlet.xml
我正在使用 Gradle 进行构建。一切都适用于 Spring Framework 4.2.5/Spring Boot 1.3.6,但适用于 Framework 4.3.2/Spring Boot 1.4.0。
梯度脚本:
grails - Grails 3 war - 内联插件问题
我正在尝试使用内联插件来对抗 grails 3.1.9 应用程序,它抛出一个错误说“java.lang.IllegalStateException: Unable to rename 'C:\test\grails_demo\plugins\grails_demo_plugin\build\libs\grails_demo_plugin-0.1. jar' 到 'C:\test\grails_demo\plugins\grails_demo_plugin\build\libs\grails_demo_plugin-0.1.jar.original'”。
我不确定为什么它不能重命名文件。我的 settings.gradle 文件包含:
并且在 build.gradle 文件中的依赖块包含如下所示:
当我尝试运行该应用程序时,一切正常,但是当我执行 grails war 时,我收到了这个错误。
经过几个小时的谷歌我发现,错误来自 Gradle-Spring-Boot 任务 bootRepackage 。
根据此链接(https://github.com/spring-projects/spring-boot/issues/1113)我刚刚将“bootRepackage {分类器='exec'}”添加到我的插件的build.gradle文件中,错误消失了但是 plugin-jar 没有添加到 war 文件中。
这是我的应用程序的 github 链接(https://github.com/Vigneshwaran082/grails_demo)
这是我完整的堆栈跟踪链接(https://github.com/Vigneshwaran082/grails_demo/blob/Vigneshwaran082-stackTrace/stackTrace.txt在此处输入链接描述)
java - @Retryable 不适用于 Spring-boot-gradle-plugin
我正在尝试通过在我的(spring boot gradle 插件)应用程序中添加重试逻辑@Retryable
。
到目前为止我做了什么:
在类路径中添加了最新的 starter aop:
重试类:
测试逻辑:
但是重试逻辑不起作用。有人有什么建议吗?
spring-boot - 带有 Spring Boot 的 Neo4j-Ogm:类路径扫描在部署为可运行 jar 时找不到 DomainEntities
我正在使用 neo4j-ogm 2.0.4 将现有应用程序从 Spring-Data-Neo4j 3.x 迁移到 4.1。在克服了一些障碍后,现在直接从 IDE 启动时运行良好。
但是,当我通过 Spring Boot 可运行 jar 运行它时,它没有找到任何 DomainEntities:
可执行 jar 是使用 Spring Boot Gradle 插件构建的,它允许使 jar 可执行:
当 jar 启动时,我已通过远程调试附加到应用程序,发现org.neo4j.ogm.scanner.ClassPathScanner#scan
仅包含我的 jar 为classPathElement
. 根据代码,现在应该将其扫描为 zip/jar 文件。然而,当classPathElement.isFile()
被执行时,它的计算结果为 false 并且 jar 被跳过。为什么会这样?可执行jar不是文件吗?
我可以采取哪些步骤来运行它?我可能可以使用其他一些部署机制,但我发现这相当简单且运行良好。
gradle - 如何使用 Spring Boot、Gradle、Semantic Versioning 和 Jenkins 生成应用程序版本
我有一个启用了执行器的 Spring Boot Web 应用程序。当我打开<app_url>/info
时,我看到下面
我不确定如何在这里生成版本号。我想使用语义版本控制MAJOR.MINOR.PATCH+timestamp+Build_Number
存储包的构建信息的普遍共识是什么?我不想存储它,application.yml
因为它由 Puppet 管理并且在应用程序战争之外。我希望它由 Jenkins 生成到某个文件中,Spring Boot 可以从该文件中获取它。我应该让詹金斯写入build-info.properties
由 生成的spring-boot-gradle-plugin
buildInfo
吗?还是应该在生成文件时由 Gradle 自己生成版本?Gradle 是如何知道MAJOR.MINOR.PATCH
细节的?我已经没有关于如何将所有这些整合在一起的想法了。
spring-boot - spring-mongo 和 spring-cassandra 之间的冲突
1.在微服务中使用spring-mongo很好。
2.在微服务中与spring-cassandra配合良好。
使用 gradle 构建项目。
但是当我将 spring-cassandra 添加到 spring-mongo 中时,会出现错误。即使只是导入 spring-cassandra 依赖项,也没有任何 cassandra
错误跟踪太长了。只是总结一下。抛出异常
```
不是由一个类引起的。当我用 gradle 运行测试时。所有测试用例都会抛出这个异常。并且 spring boot 应用程序无法启动。以前运行良好。
而且我没有添加任何java代码来调用datastax驱动程序来连接cassandra。不知道为什么cassandra连接有异常。
gradle - spring-boot-gradle-plugin 打破依赖缓存策略
我的项目依赖于一个不断变化的模块(foo,一个 maven SNAPSHOT 依赖项)进行调试,foo 总是在变化。我添加后apply plugin 'spring-boot'
, foo 被缓存了很长时间。
我应该怎么做才能让更改模块与 spring-boot 插件一起正常工作?
gradle - 如何使用 gradle-script-kotlin 配置 spring-boot 重新打包
使用常规 gradle,我会像这样配置一个主类:
使用 gradle-script-kotlin,这不起作用。
我想我需要以某种方式使用Project.configure
内联函数,但我尝试了一些不同的东西,但我无法让它工作。
java - spring boot application-[profile].properties 不工作
我已经设置了 Spring Boot Web 项目。当我只有一个包含所有数据库连接详细信息的 application.properties 文件时,它运行良好。我正在使用mysql数据库。这是我的 application.properties 文件。
我想设置不同的环境,例如生产、开发、测试、登台、本地。
根据文档配置文件特定的属性
我创建了 5 个配置文件特定的属性文件
我已经从默认的 application.properties 文件中删除了数据库连接属性。
我在 gradle build 中添加了这个以允许传递活动配置文件
当我使用 gradle 启动项目时
它可以工作,它连接到测试数据库。
但在理想的生产场景中,我想使用“test”配置文件构建jar 文件,以便它运行所有测试并在所有测试通过时创建 jar。
例如
然后将 jar 部署到不同的环境(暂存、开发、生产等)并运行
在开发中
在舞台上
但是构建失败,但有例外
另一个问题是,
如果我一开始没有任何测试,是否可以在不通过任何配置文件选项的情况下构建 jar?
它因此异常而失败
更新:
正如@Alex 在评论中所建议的那样,
“ComputeApplicationTests 使用 @SpringBootTest 进行注释并且没有指定任何 ActiveProfiles。它在默认配置文件中找不到适当的配置并失败”
删除测试使构建现在成功。
spring-boot - Spring Boot - 将应用程序类打包为 BOOT-INF/lib 中的 jar
我正在使用带有 Gradle 3.1 的 Spring Boot 1.4.1。应用了 Spring Boot 插件的模块使用任务创建自己的 jar jar
,并且还具有使用bootRepackage
. 但是,该模块中的类位于 BOOT-INF/classes 中,但我希望它们位于 BOOT-INF/lib 中的单独 jar 中。这个怎么做?
编辑:我知道我可以将代码移动到一个单独的模块,但由于各种原因,我无法进行这样的拆分(除非没有其他方法)。我正在寻找一种单模块解决方案,如果存在的话。