这是这个问题的后续问题:
JAVAlang.ClassNotFoundException:org。springframework。靴子springapplicationmaven
我已经在Windows上使用Eclipse开发了一个web服务。我需要在Solaris工作站上运行它,在那里我得到ClassNotFoundException。
这是我的pom。xml:(maven shade插件是我读过的,它可以创建一个包含所有依赖项的uber jar)。
<?xml version="1.0" encoding="UTF-8"?>
http://maven.apache.org/xsd/maven-4.0.0.xsd"
<groupId>org.springframework</groupId>
<artifactId>gs-rest-service</artifactId>
<version>0.1.0</version>
<packaging>jar</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.5.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<properties>
<java.version>1.8</java.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.group.id.Launcher1</mainClass>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-releases</id>
<url>https://repo.spring.io/libs-release</url>
</pluginRepository>
</pluginRepositories>
这是我尝试在Solaris上运行jar时遇到的例外情况:
原因:java。lang.ClassNotFoundException:org。springframework。靴子Spring在java上的应用程序。网URLClassLoader$1。在java上运行(URLClassLoader.java:366)。网URLClassLoader$1。在java上运行(URLClassLoader.java:355)。安全访问控制器。java上的doPrivileged(本机方法)。网URLClassLoader。java上的findClass(URLClassLoader.java:354)。lang.ClassLoader。sun上的loadClass(ClassLoader.java:425)。杂项。启动器$AppClassLoader。java上的loadClass(Launcher.java:308)。lang.ClassLoader。loadClass(ClassLoader.java:358)
该项目得到了一个“Maven Dependencies”文件夹,其中包含许多Spring框架的jar文件。
我真的不明白这个问题的答案。主要答案建议创建一个统一的jar,如下所示:如何使用Maven创建一个具有依赖关系的可执行JAR?
但我并不完全理解如何创建那个合并的罐子。我需要在pom文件的答案中添加行吗?还是别的地方?并且运行mvn clean compile assembly:single
应该在windows中的命令行中完成吗?如果是的话,走哪条路?仅仅导出到jar就足够了吗?
如果有人能列出要做的操作,那就太好了。
对我有用的是:
mvn清洁
maven安装
maven包
当您运行mvn包时,springbootmaven插件已经创建了一个包含所有依赖项的可运行JAR(这是springboot的主要用途之一)。所以删除maven shade插件,因为这不是必需的(事实上,我认为这是真正的问题,因为它会干扰Spring Boot)。
在回答其他问题时没有人说过,您需要使用maven来创建jar,而不是使用Eclipse的export-to-jar选项。您需要做的是:
1)从https://maven.apache.org/download.cgi下载maven
2)maven目录包含一个bin文件夹。将此文件夹添加到您的路径环境变量(在Windows 8上,右键单击此PC-
打开CMD
4) 导航到项目的文件夹
5) 类型mvn包
jar文件是在“目标”文件夹内创建的。
祝你好运
我正在测试maven及其功能。我正在尝试使用commons io将字符串写入文本文件 我已经添加了公地-io到依赖关系 波姆。xml 它编译,但当我运行它时,它抛出一个异常 我想我错过了一些东西,你能帮我指出一下吗?
我在spark中编写了一个简单的程序,在mySql中向表中写入一个数据帧。 计划如下: 我的项目的POM文件如下 我运行这个程序使用火花提交(尝试在本地和纱线模式)。我没有显式包含任何jar文件来运行此代码。我一直得到错误: 线程“main”java中出现异常。lang.ClassNotFoundException:com。mysql。jdbc。驾驶员 对此该怎么办?
我正在使用Eclipse IDE,并试图将其配置为有趣的javafx第一次。起初,我收到了javafx.controls的错误信息,在从构建路径中删除javafx sdk库后,它修复了该错误,现在我有了这个。我当然安装了e(fx)clipse插件。我试图彻底解决我试图解决的问题。 我浏览了多个论坛,尝试了许多不同的方法。我已将vm参数添加到我的运行配置中: --moid-path"C:\Downl
应用程序通常会通过抛出另一个异常来响应异常。 实际上,第一个异常引起第二个异常。 它可以是非常有助于用户知道什么时候一个异常导致另一个异常。 “异常链(Chained Exceptions)”帮助程序员做到这一点。 以下是Throwable中支持异常链的方法和构造函数。 Throwable getCause() Throwable initCause(Throwable) Throwable(St
你可以使用raise语句 引发 异常。你还得指明错误/异常的名称和伴随异常 触发的 异常对象。你可以引发的错误或异常应该分别是一个Error或Exception类的直接或间接导出类。 如何引发异常 例13.2 如何引发异常 #!/usr/bin/python # Filename: raising.py classShortInputException(Exception): '''A u
问题内容: 异常存储在哪里?堆,堆。如何为异常分配和释放内存?现在,如果您有多个需要处理的异常,是否创建了所有这些异常的对象? 问题答案: 我假设为异常分配的内存分配方式与所有其他对象(在堆上)分配方式相同。 这曾经是个问题,因为您不能为OutOfMemoryError分配内存,这就是直到Java 1.6之前 才没有堆栈跟踪的原因。现在,它们也为stacktrace预分配了空间。 如果您想知道在抛