问题标签 [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.

0 投票
2 回答
5187 浏览

spring-boot - spring-boot-maven-plugin 的使用

在创建 Spring Boot 项目时,我在 pom.xml 中定义了属性<packaging>war</packaging>,我可以使用它来创建战争,然后将战争部署到服务器中,可能是 tomcat 或 WAS。
但是我遇到了一个名为spring-boot-maven-plugin的插件,它的文档说明它的用途是打包可执行的 jar 或战争档案并就地运行应用程序
我的问题是为什么我们需要这个?
如果我的包装可以告诉我要创建什么然后可以部署它来运行,那么这个插件的用途是什么。
我正在尝试了解一个新项目,因此想确保每一行都有意义

0 投票
0 回答
5974 浏览

spring - “在 META-INF/spring.factories 中找不到自动配置类”尝试独立构建 Spring

我正在尝试从多模块 Maven 项目构建一个独立的 .jar。

项目结构为

ema-server/ shared/ # 与 Java 客户端共享 rest-api/ # Spring REST API server/ # 为独立提供 main() 并捆绑在一起 web/ # 一个简单的 AngularJS Web 服务器

server/模块的存在是为了构建独立 .jar的. 为此,它取决于rest-api/包含@SpringBootApplication.

你可以看看我拼命尝试完成这项工作,但这是我目前的“解决方案”:

模块的pom.xmlserver/

我想在这里声明,如果我在 Eclipse 中将这个东西作为 Java 应用程序运行,那么一切正常。

但是,如果我运行“独立” java "*" org.ema.server.Server,我会得到:

您可以在此处查看完整的输出。

有人可以告诉我如何使这项工作吗?

如果我能提供更多信息,请告诉我。

0 投票
0 回答
78 浏览

spring - 如何将 WAR 模块加载到独立运行的 Spring 内置 Tomcat 中?

我的 Maven 项目中有三个模块:

我不确定我这里是否有一个“优雅”的解决方案,所以如果这完全是垃圾,请用棍子打我,但这就是它的工作方式 - 或者它应该如何工作:


休息API

模块rest-api只是提供 REST API 和其他核心功能——基本上它是纯服务器代码。这是一个jar神器。

网络客户端

为了分离客户端和服务器代码,我有模块web-client。这是一个war包含客户端 webapp 的项目。

应用

这个模块应该把它全部粘起来。这取决于rest-apiweb-client。它做了两件重要的事情:

  1. 它是 pom.xml 用于spring-boot-maven-plugin构建独立可运行文件jar- 我的最终目标
  2. 它提供main(String args[])@SpringBootApplicationSpringApplication.run(EasyModelAccessServer.class, args);

我目前能够告诉 Eclipse 在 servlet 容器中运行它。服务器启动,我的两个资源,rest-apiweb-client工作。到目前为止一切都很好。

问题

没有完全工作的是独立的。如果我打包整个东西并运行服务器:

只有 REST API 可以工作。原因是web-client没有作为 web 应用程序添加或引入 Spring 内置的 Tomcat

问题

是我如何使这项工作。我想到了两个选择:

  1. 以某种方式将web-client.war文件潜入其中application.jar,使其可作为资源使用并以编程方式调用tomcat.addWebapp("/web-client", "path/to/web-client.war")(或类似的方法)以加载附加服务
  2. 希望这个spring-boot-maven-plugin或另一个 Spring Maven 插件可以为我做到这一点,并找到将我链接到示例的人。

我已经用 1 试过了。但我没有成功web-client.war进入application.jar,但我也不确定我是否应该这样做。


常问问题

问:为什么要将所有内容分开,而不是将所有这些模块合并到一个server模块中,让 Spring Maven 插件开箱即用地为你做所有事情?

A:我真的很想将客户端代码与服务器代码分开。但是我可以合并web-clientapplication但上次我尝试了我有 10 个其他问题,为什么这没有解决,所以我决定保持这种方式,并且实际上加载额外的服务器资源不应该那么难。

问:我可以看看这个项目吗?

答:是的,你可以。看看:https ://github.com/silentsnooc/easy-model-access请原谅我,我目前使用的是制表符而不是空格 - 我将在一切启动并运行后立即更改它。

0 投票
1 回答
1955 浏览

java - Maven 对原始 Spring Boot JAR 的依赖

我正在使用 Spring Boot 和 spring boot maven 插件,它创建了一个 JAR

插件创建的 JAR 将类放在 JAR 的子目录中,这意味着我不能将 JAR 用作 maven 中的依赖项。

有没有办法在原始 JAR 上声明 maven 的依赖关系。我看到目录中有一个*.jar.original文件,target所以也许我可以创建一个依赖项,这样可以通过声明 kind 的依赖项来创建对测试类的依赖项test-jar

只是为了澄清:我正在做这个测试/更容易调试,而不是为了生产。

0 投票
1 回答
3996 浏览

spring-boot - Spring Boot Web 应用程序未启动

我有一个小型 Spring Boot 应用程序,它通过控制器公开 API。控制器使用一些服务,这些服务使用 mongodb 存储库。

我的 pom.xml:

控制器:

主要应用类:

当我从命令行或 Eclipse 运行 mvn spring-boot:run 时,会出现各种错误。如果我删除“servletContainer”方法,我会得到:

如果它在那里,我会收到另一个错误:

Maven 正在将 tomcat-embed-core-8.5.11 添加到依赖项中,以便报告为未找到的类存在。这让我很困惑。

我还尝试了一些在 Internet 上找到的演示项目,但我无法通过嵌入式容器侦听请求来启动并运行任何 spring-boot 应用程序。

有人可以指出我做错了什么吗?

非常感谢。

0 投票
1 回答
1124 浏览

maven - 解包 WAR 不解包

我试图实现与此处发布的问题相同的目标,即将战争依赖项组装到可部署的 zip 中,战争及其一些解压缩的 *.yml 文件都在最终的 zip 中。我已将战争文件正确组装到 zip 中,但我无法让 maven-dependency-plugin 将 *.yml 文件从战争中解压缩以重新打包。

为了清楚起见,这就是我所拥有的:

  • 项目一
    • 名称:myapp-war
    • 包装:战争
  • 项目 2
    • 名称:myapp-部署
    • 包装:pom
    • 依赖:myapp-war:war
    • 所需输出:myapp.zip,其中包括:
      • bin/myapp.war
      • conf/application-*.yml

这是我的插件声明的样子:

我还尝试了一个变体,在其中声明<outputDirectory>and<includes>就在 之下,根据unpack mojo docs<configuration>是允许的。

无论哪种情况,我都会得到一个空的 myapp-deploy/target/unpack 文件夹,以及 maven 输出中的 [INFO] 和 [DEBUG] 消息,说明:

maven 似乎已经理解了我的指示,但似乎并没有像它声称的那样解包。知道我做错了什么吗?

0 投票
2 回答
2571 浏览

java - spring-boot-maven-plugin 可以用于非 spring 项目吗?

主要目标是将spring-boot-maven-pluginSpring Boot 应用程序打包到具有所有依赖项的可执行 jar 中。可以在没有spring或spring boot的项目中使用吗?我的意思是不使用 spring 依赖项,而只是用于加载依赖 jar 的类加载器机制。

0 投票
1 回答
995 浏览

maven - 如何将自定义启动器添加到 spring-boot-maven 的可执行 jar

如何将自定义加载程序添加到可执行 jar?目前,我通过打开 jar 文件、粘贴类并在末尾重新签名来手动执行此操作。-.-

在此先感谢佩德罗席尔瓦

0 投票
1 回答
616 浏览

matlab-figure - 使用 Matlab webfigures 的 Spring Boot 应用程序抛出错误

我正在使用 Spring Boot MVC Maven 应用程序来绘制 Matlab webfigures。我的 matlab 应用程序返回 4 个 webfigure 对象,我喜欢在我的应用程序页面上展示它们。我使用 javabuilder 将 matlab 代码包装到 Java 类中。但是我收到错误:

无法初始化 com.mathworks.mwswing.MJStartup

我能够使应用程序在 Spring XML 中运行,但 spring boot 不适合我。不知道为什么。

我的消息来源:

上传控制器.java

应用程序.java

主页.jsp

网络人物.tld

pom.xml

收到错误:

0 投票
1 回答
141 浏览

java - 尝试在控制器中检索用户输入的值并将其添加到 SpringBoot 应用程序中的 mysql 数据库

我已经将我的 html 文件放在里面src/main/resources/static/NewFile.html,如果我使用控制器就像(@RequestMapping("/"))它只是返回字符串而不是视图一样,它就不起作用。除了我要http://localhost:80/NewFile.html访问它之外,如果我输入动态值并提交,它不会转到特定的控制器。

我是新手Springboot。谁能告诉我哪里出错了。