我最近使用idea里面的project structure选择artificial打包jar包运行后发现一直报错
我最后也是裂开了,多方面查找,最后还是采纳学长的意见,使用Maven自动打包好一点,因为jar包里面的依赖会自动给你安装好,
不过需要添加一些依赖,我本人是加了这个:
<packaging>jar</packaging>
不过还应该加一些其他的,如我去找的狂神说里面的:
<!--配置-->
<properties>
<!--项目的默认构建编码-->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!--编码版本-->
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<!--项目依赖-->
<dependencies>
<!--具体依赖的jar包配置文件-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
</dependencies>
<!--项目构建用的东西-->
<build>
<finalName>javaweb-01-maven</finalName>
<pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.1.0</version>
</plugin>
<!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
还有就是可能会出现Maven约定大于配置得到问题,就是说配置文件可能无法被导出或者生效,我本人之前不相信,结果就出现了无法被导出,配置如下(也是狂神说笔记里面的):
<!--在build中配置resources,来防止我们资源导出失败的问题-->
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>
然后可以直接在jar包的文件位置输入cmd进入命令行,然后输入
java -jar 文件名.jar
如果没有报错,直接运行成功,那么就可以先去浏览器访问,在此提醒一下,有的人写的代码可能是post,而浏览器是默认的get,所以可能会在命令行出现一个警告post,这个时候需要去下载插件,将浏览器改为post,或者修改里面的文件为get,然后重新使用Maven的打包。
运行成功后,可以使用xftp7进行文件传输,然后同样是进入所在目录进行一下命令:
java -jar 文件名.jar
然后就可以在Linux系统浏览器上访问了。