问题标签 [spring-boot-maven-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 - 在 Spring Boot 的 application.properties 中使用 Maven 属性
我正在尝试将 pom.xml 中的属性加载到 application.properties 中。我想创建两个配置文件:dev 和 prod 以使用不同的数据库 url。我使用 Jenkins 作为 CI,在我的所有应用程序(主要是 Spring MVC,没有 Boot 项目)中都使用 maven 配置文件部署到 Tomcat。使用 maven 属性可以做到这一点吗?我尝试过这样的事情:
spring.datasource.url=${jdbc.url}
angularjs - 带有实时重载的 Spring Boot Maven 插件和 Grunt
我创建了一个 Spring Boot 应用程序,我想部署一个通过 Yeoman(角度生成器)生成的 Web 前端。但是,我无法让事情正常工作:当我运行应用程序时,我的静态资源被部署用于生产(localhost:8080/dist/index.html 工作很酷),而不是用于开发(localhost:8080/app/index.html工作不酷)。
我将整个 Web 前端结构移动到static
. 通过终端,我可以 cd 到该文件夹 ( src/main/resources/static
) 并运行grunt build
and grunt serve
; 这样,当我在前端工作时,我可以利用实时重新加载。
然后,我在项目根目录中创建了以下脚本,以通过 grunt 构建我的前端:
我修改我pom.xml
的如下:
现在,当我执行时mvn spring-boot:run
,我的 Spring 项目可以正确启动,但是 grunt 是为生产而构建的(访问 app/index.html 不会让我加载 angular&co)。
如何连接东西以便我可以执行mvn spring-boot:run
并编译、部署和实时重新加载我的前端项目(即我想访问 localhost:8080/app/index.html 并加载 angular&co)?
java - Spring Boot 命令行属性不覆盖 application.properties 中定义的属性
我创建了一个使用旧库的 Spring Boot 应用程序。这个遗留库在 XML 中定义了许多 Spring Bean。其中一个将属性值作为构造函数参数:
在我的 Spring Boot 应用程序中,我有一个application.properties
定义此属性的方法,如下所示:
我使用 Maven Spring Boot 插件在本地运行我的应用程序,如下所示:
并且属性值按预期注入到 bean 中。
如果我尝试像这样覆盖my.url
命令行上的属性:
不使用覆盖的值,而是使用内部的值application.properties
。
根据 Spring Boot 文档,命令行中的值应作为第一要务:https ://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config .html。此处似乎并非如此,因为如果我从中删除该属性,application.properties
则使用在命令行中传入的值,因此不会完全忽略命令行值。该值似乎application.properties
覆盖了命令行值。
有人对发生的事情有任何想法吗?
java - Spring Boot 可执行 jar 抛出 java.lang.ClassNotFoundException: org.apache.tomcat.util.descriptor.web.ServletDef
我创建了一个简单的测试用例,显示了我当前面临的问题。
我试图做的是手动启动从 CommandLineRunner 嵌入的 Tomcat 并手动部署文件系统上某处可用的 war 文件:
这是我的简单 pom.xml:
所以这就是发生的事情:
如果我从 Eclipse 中运行应用程序,则完全没有问题;
如果我运行“mvn clean package”然后运行“java -jar [path-to-jar]”,我得到:
/li>如果我用 maven-shade-plugin 替换 spring-boot-maven-plugin,然后尝试“mvn clean package”,然后是“java -jar [path-to-jar]”,一切正常。
我是否缺少 spring-boot-maven-plugin 上的一些配置以使我的可执行 jar 实际工作?
更新 1
我的问题与这个有点相关。我尝试了那里提出的解决方案,它确实可以从命令行和 Eclipse 中工作。
但是,我仍然不明白在我的具体案例中表现出的不一致行为:
- 为什么它在 Eclipse 中有效,而在命令行中无效?
- 如果我用 maven-shade-plugin 替换 spring-boot-maven-plugin 为什么会起作用?
eclipse - 春季启动应用程序中的Oracle驱动程序ojdbc6 maven依赖错误
我正在尝试开发将在后端连接到 oracle db 的 spring boot 应用程序。对于 oracle db 连接,我添加了 ojdbc6 驱动程序依赖项。我已经在 .m2 文件夹中有 ojdbc6 jar。但我仍然在 pom.xml 中为 ojdbc6 依赖项“缺少工件 com.oracle:ojdbc6:jar:11.2.0.3”出现编译错误
根据各个站点上提到的解决方案,我尝试使用以下 mvn 命令安装 ojdbc6 jar: mvn install:install-file -Dfile={Path/to/your/ojdbc.jar} -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion =11.2.0.3 -Dpackaging=jar
但它没有说工件已经存在:
spring-boot - Springboot 未加载 application.dev.properties 文件
在我的项目中,我想使用特定于环境的属性文件。例如,如果我将它运行到开发中,它应该使用 application.dev.properties,对于生产它应该使用 application.prod.properties 等等。
我的资源文件夹中有以下两个文件。
- application.properties(用于生产)
- application.dev.properties(用于开发)
我在每个文件中都有一个如下属性。
产品
对于开发
我有一个像下面这样的课
上面的代码总是采用 prod 设置(application.properties)文件,即使我为 dev 提供了正确的参数,比如--spring.profiles.active=dev
下面是我用来加载开发属性文件的命令。
它还打印出活动配置文件是 dev,但它始终连接到 prod db。
maven - Spring Boot Maven 插件 - 定义工作目录
我正在开发一个 Spring Boot 应用程序版本 1.3.5.RELEASE,我正在尝试使用 spring-boot-maven-plugin (使用启动/停止目标)实现集成测试。我的 application.properties 文件当前位于 target/test 文件夹中,但是在运行它时,应用程序正在项目的根路径中查找 application.properties 文件。
有谁知道如何在spring boot maven插件中设置工作目录?
我当前的插件配置是:
java - 弹簧启动执行器在 Java 6 上不起作用
在 java 中,我试图在我的项目中设置 spring boot 执行器。基于官方 Spring Boot 网站http://docs.spring.io/spring-boot/docs/current/reference/html/我尝试只声明执行器依赖项。下面是具有执行器依赖项的 pom 文件。
`
当 spring boot 服务启动时,我也没有看到任何 http 服务器正在启动,当我尝试访问默认 url http://localhost:8080/info 或 /health 时,我收到连接被拒绝错误。关于我在这里缺少什么的任何指示?
编辑我原来的问题:详细说明为什么会有这么多排除项
完成上述排除,以便我可以使用 log4j 而不是 spring boot http 提供的默认 logback 配置://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.html#howto -configure-log4j-for-logging
以上是为了启用 HikariCP 连接池而不是 spring boot http://stackoverflow.com/a/36287225/1776145提供的tomcat连接池
上面的排除是用jetty代替tomcat http://docs.spring.io/spring-boot/docs/current/reference/html/howto-embedded-servlet-containers.html#howto-use-jetty-instead -of-tomcat
上述排除已完成,因为它在我使用 Java 6 时给出了不受支持的重大小错误
spring-boot - 我如何将常量值从 tomcat 传递到 war 文件(即基于 spring-boot )?
经过大量的在线搜索并尝试了很多实验。最后我没有得到任何可以满足我要求的链接,所以最后我选择了这个平台。
笔记 : I am using Spring-Boot Maven Project & Tomcat 7.0.62 version & JDK 7.
首先,我正在使用Embedded Tomcat & produce .Jar
,并且我将额外的内容传递dynamic parameter
给.jar
using command line argument
。
现在,场景已经改变。我的.Jar
文件也将转换为.war
文件,excluded Embedded Tomcat
即我们没有嵌入 Tomcat。
现在我想将类似from tomcat的东西传递same list of command-line argument
给我的 Spring-Boot 项目。.war file from outside.
任何帮助表示赞赏。
spring-boot - 如何将 spring-boot-maven-plugin 生成的 jar 包含到第三个应用程序中
我创建了一个依赖于的应用程序a.jar
,它是由 spring-boot-maven-plugin 生成的。a.jar
依赖于另一个b.jar
,它位于它的lib\
文件夹中。当我启动我的应用程序时,我收到以下错误:
可以将 spring-boot-maven-plugin 生成的 jar 添加到第三个应用程序的类路径中吗?如果是,如何?