问题标签 [spring-boot-starter]

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.

0 投票
2 回答
1180 浏览

spring-boot - Spring Boot 应用程序中 thymeleaf 和 jasper 文件的共存

我试过,在一个项目中jasper和thymeleaf都可以,但是不能共存,因为我想用jsp必须注释掉spring-boot-starter-thymeleaf依赖的包,这样才能运行。寻找一种解决方案,以便 jasper 和 thymeleaf 可以共存。如果有人使用 servlet-context.xml (在 Spring Boot 中混合 thymeleaf 和 jsp 文件),我得到了关于 stackoverflow 的解决方案,其中 jasper 和 thymeleaf 共存。但我的要求是如果我使用的是 spring-boot-starter-web,如何在 pom.xml 中包含这些属性。

0 投票
2 回答
1648 浏览

maven - Spring Boot:使用 Maven 和特定 Maven 配置文件的自动属性扩展不起作用

我正在尝试使用72.1.1 Automatic property expansion using Maven,如使用不同 Maven 配置文件的文档中指定的那样,但我无法使其与特定配置文件一起使用

我有以下内容pom.xml

这非常简单application.properties

我使用 Spring Tool Suite 运行 maven 构建,目标如下:

构建成功,但application.properties目标文件夹中仍包含未解析的@...@占位符。

如果我在两个配置文件之一的 pom.xml 中添加这个简单的行:

占位符已正确解析。

这个配置有什么问题?

0 投票
0 回答
60 浏览

spring-boot - 在自定义 Spring Boot Autoconfiguration 项目中处理不同的 Spring Boot 版本

在自定义 Spring Boot 自动配置项目中,我通常有一些被标记为可选的依赖项。因为我需要它们进行编译,但希望我的 autoconfig 用户手动将它们包含在他们自己的 POM 中,否则它们将由 Spring Boot 依赖项提供。

如何确保不同 Spring Boot 版本的用户可以使用我的自动配置而不会出现依赖/版本问题?

我看到两个非最佳解决方案;还有更多吗?

希望API保持不变

只是希望我的依赖项的 API 在较小的版本更改中保持稳定,这样如果我使用 Spring Boot 1.4.x 开发和编译我的 Autoconfig,我使用的 API 仍然与 1.5.x 等相同。

然后,我不一定期望它适用于 Spring Boot 2.x,并将相应的注释放入自述文件中。

显式跟踪每个 Spring Boot 版本

至少为每个次要 Spring Boot 版本显式构建一个版本,但甚至可能为每个 Patch 版本构建一个版本?谁知道什么时候会发生破坏性的 API 更改。然后,我需要记录我的自动配置所针对的确切 Spring Boot 版本。但这是很多工作。


当然 Spring Boot 自己的 autoconfig 项目是与 Spring Boot 同步开发的,因此任何问题都会在同一个版本中修复。

但是我自己的自动配置可能已经开发过一次,之后不会有很多变化。即使我的自动配置的“用户”正在更新他们的 Spring Boot 版本依赖项,我如何确保我的自动配置尽可能长时间地工作?

0 投票
1 回答
59 浏览

java - 理解@Enable...注解并发

我们有一个使用 spring-boot-cache-starter 的项目,注册一个实现,并在代码中ehCache CacheManager传播。@Cacheables

然后,其他一些团队创建了一个 starter,它基本上依赖于spring-boot-cachestarter (hashmap) 自动配置的默认配置来处理自己的@Cacheable方法。

两个代码都包含@EnableCaching注释,我们的问题是,如果我们注释主项目的 @EnableCaching 注释,行为会有所不同。

  1. 如果我们不在@EnableCaching我们的项目中评论,当我们使用自定义启动器时,一切正常。@Cacheablesfrom the starter 在 starter 范围内被索引和解析,但从 @Cacheables我们的域被解析在我们的ehcache.
  2. 如果我们@EnableCaching在我们的项目中发表评论,那么启动器和我们的项目都会@Cacheables尝试针对我们的ehCache实现来解决。

这打破了我迄今为止的许多先入之见:

  1. 我一直认为诸如@Enable... 之类的注释适用于所有上下文,无论放置(启动器/应用程序配置)如何,也无论在扫描所有@Configuration类时是否找到一次或两次。

  2. 为什么当两个注释都存在时案例会起作用,我猜CacheManagerspring-boot-cache-starter 中的 是 a @ConditionalOnBean,所以在这种情况下,我希望两个项目都使用ehcachebean 进行解析,而不是每个项目的域

PS@EnableCaching在我们的主项目中找到的放在一个内部静态@Configuration 类上。这可能很重要吗?

0 投票
1 回答
1567 浏览

kotlin - 使用 Kotlin 和 SpringBoot 持久化 LocalDate

我正在使用 SpringBoot 和 JPA 尝试 Kotlin。我尝试坚持 LocalDate 但有一个错误。以下是我的实体的代码:

转换器:

当我尝试创建实体时:

错误堆栈如下:

原因:org.h2.jdbc.JdbcSQLException:SQL 语句中的语法错误“SELECT SEASON0_.ID AS ID1_6_0_, SEASON0_.FROM[*] AS FROM2_6_0_, SEASON0_.NAME AS NAME3_6_0_, SEASON0_.STATUS AS STATUS4_6_0_ FROM SEASON SEASON0_ WHERE SEASON0_。身份证=?”; 预期的“标识符”;SQL 语句: select season0_.id as id1_6_0_, season0_.from as from2_6_0_, season0_.name as name3_6_0_, season0_.status as status4_6_0_ from season season0_ where season0_.id=? [42001-195] 在 org.h2.message.DbException.getJdbcSQLException(DbException.java:345) ~[h2-1.4.195.jar:1.4.195] 在 org.h2.message.DbException.getSyntaxError(DbException.java :205) ~[h2-1.4.195.jar:1.4.195] at org.h2.command.Parser.readColumnIdentifier(Parser.java:3241) ~[h2-1.4.195.jar:1.4.195] at org .h2.command.Parser.readTermObjectDot(Parser.java:

有没有人遇到同样的问题?

预先感谢,罗曼。

0 投票
0 回答
843 浏览

spring-security-oauth2 - Spring Security OAuth2 无法获取访问令牌

我有一个 spring security oauth 客户端,它针对自定义 auth0 提供程序进行身份验证。为了获得 UserAuthorizationUri,我需要向 auth0 顶部的包装器的 rest 端点发出 post 请求。所以我扩展了 OAuth2ClientContextFilter 并使用了自定义重定向策略。现在应用程序正在重定向到身份验证提供程序,登录后,访问令牌因 CSRF 错误而失败

应用配置

应用程序.java

自定义过滤器

自定义重定向策略

0 投票
1 回答
337 浏览

spring-boot - Spring Boot 2:在自定义启动器中设置日志级别?

是否可以将日志级别设置为自定义启动器配置的一部分?

例如,假设我创建了一个自定义启动器,它扩展了默认的 spring-boot-starter-data-jpa。是否可以将日志级别设置为启动org.hibernateWARN的一部分,以便使用我的自定义启动器的每个应用程序都自动继承它,而不必在他们自己的属性文件中切换INFO到?WARN

非常感谢!

0 投票
2 回答
3801 浏览

maven - 如何在 maven pom.xml 文件中拥有另一个父依赖项以及 Spring Boot 父项?

我目前正在开发一个 Spring Boot 多模块项目。

当你建立一个 Spring Boot 项目时,pom.xml你需要有一个 Spring Boot 的父引用,例如

我想要的是我的项目是一个更广泛项目的子模块 Spring Boot 项目(即,我想将它们一起打包在 Repo 中的一个项目文件夹下)。

现在,通常为了设置多模块项目,您将上面的父 pom 信息放入您的子模块pom.xml中。

但是由于要求将 Spring Boot 父级作为要求,因此不可能这样做。

我已经在网上看到了建议将我的子模块移出并将其作为一个单独的项目独立的建议,但我认为这将是我现在的最后手段,除非这是唯一的方法。

有没有人对如何实现我想要的或者我想要实现的目标是否切实可行有任何想法?

期待听到选项...

0 投票
2 回答
6750 浏览

spring-boot - 具有依赖关系且没有 @ComponentScan 的 Spring Boot 自动配置

Spring boot 提供@ComponentScan查找要扫描的包。

我正在建立一个图书馆,@RestControllers里面有package com.mylib.controller. 在不同的包中还有其他带有构造型注释的类。

因此,如果有人正在使用com.myapp 基础包开发 SpringBoot 应用程序。他在他的应用程序中使用了我的库。他需要提到@ComponentScan("com.mylib")发现库的刻板印象组件。

有没有办法在不包括库包的情况下扫描组件@ComponentScan

由于spring-boot-starter-actuator仅通过依赖关系公开其端点,而无需定义@ComponentScan. 或任何被扫描的默认包,无论应用程序基础包如何。

0 投票
0 回答
837 浏览

java - Spring Boot自定义启动器,应用程序找不到所需的bean

http://www.baeldung.com/spring-boot-custom-starter

我已经按照上面链接提供的教程和 github 示例进行了操作,并实现了类似的方式。我正在使用spring-boot-starter-parent :2.0.0.M3. @componentScan即使在应用程序的 pom 中包含了我的自定义启动器依赖项之后,如果没有部署它,它也找不到所需的 bean 。

它给出了以下错误。


应用程序无法启动


描述:

com.core.controller.TestController 中的字段 fooApiCaller 需要找不到类型为“service.ApiCaller”的 bean。

行动:

考虑在您的配置中定义一个“service.ApiCaller”类型的 bean。

示例应用程序(一个抛出错误) pom.xml

自定义启动模块 pom.xml

自动配置模块依赖

弹簧工厂代码

MyAPI 产品