【问题标题】:Creating an uber jar for Spring为 Spring 创建一个 uber jar
【发布时间】:2015-09-17 15:14:34
【问题描述】:

这是对这个问题的跟进:creating an uber jar with spring dependencies

我使用 Eclipse 创建了一个 Web 服务,该服务在 Windows 上运行。我需要在 Solaris 站上将它作为 jar 运行,然后我得到 ClassNotFoundException:

原因:java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355 ) 在 java.security.AccessController.doPrivileged(Native Method) 在 java.net.URLClassLoader.findClass(URLClassLoader.java:354) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:425) 在 sun.misc.Launcher$ AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358

我想创建一个包含所有依赖项的大 jar,但我不明白上面那个问题的答案。我在哪里添加他写的内容?然后我是否只需要像往常一样使用 Eclipse 的导出选项导出一个 jar?

【问题讨论】:

  • 可能的欺骗(并且可能更清晰的解释):stackoverflow.com/q/25994145/1079354
  • 第一个问题,作为 jar 启动的 web 服务?我很确定你需要一个网络服务器来运行它吗?第二个问题,哪个类没有找到?
  • @vincent 我添加了例外。在 Windows 上开发 Web 服务器后,我得到了一个 Solaris 站,Web 服务应该在该站上运行。我不应该把它作为罐子从窗户移走吗?
  • 您使用 Spring boot,这是问题的重要部分。在这种情况下,您可以。我不是很了解,您是否先尝试过像这样的简单教程spring.io/guides/gs/spring-boot?添加“spring boot”作为标签,我希望你会有更多的答案
  • @Makoto 我看过那个问题,但答案还不清楚。每个人都只是继续编写一些要添加的 xml maven 定义,但没有人说在哪里添加它们?哪个文件?添加后我该怎么办?

标签: eclipse spring maven jar spring-boot


【解决方案1】:

在其他问题的答案中没有人说过您需要使用 maven 来创建 jar,而不是使用 Eclipse 的 export to jar 选项。 你需要做的是:

1) 从https://maven.apache.org/download.cgi下载maven

2) maven 目录包含一个“bin”文件夹。将此文件夹添加到您的“路径”环境变量中(在 Windows 8 上,右键单击“此 PC”-> 属性-> 高级系统设置-> 环境变量-> 在系统变量中找到“路径”-> 双击它并添加它将 bin 文件夹路径添加到该变量,方法与其他路径相同。

3) 打开CMD

4) 导航到您的项目文件夹

5) 输入mvn package

jar 文件在“target”文件夹中创建。

祝你好运

【讨论】:

    猜你喜欢
    • 2014-06-27
    • 2017-02-19
    • 1970-01-01
    • 2016-12-30
    • 2015-06-19
    • 2022-01-26
    • 2018-05-23
    • 2021-10-02
    • 2023-03-17
    相关资源
    最近更新 更多