关于springboot项目jar包运行时图片上传及显示问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jintingbo/article/details/82780745

spring boot打成jar包后(比如jar的名字叫a.jar),运行时输入命令:
java -jar  d:\a.jar
就可以运行了。那么程序中要求的比较大的图片文件将如何办呢?

只需要将它们同时放在与jar包相同的文件路经下就可以,但图片文件夹的名字不能随便取哦!因为

springboot默认加载文件的路径:

  • /META-INF/resources/
  • /resources/
  • /static/
  • /public/

所以,你应该在D:\新建一个static目录,还要在static下再建一个photo目录, 即d:\static\photo
先将图片文件拷贝到d:\static\photo,之后,还要在代码中指定:private final String photoFolder="static/photo/";

在运行jar包时,用 java -CP static -jar a.jar  就可以了。  注意a.jar要换成你实际的jar包名哦!

下面是来自网上的资料:

         图片上传及保存方式有多种,此处只讲springBoot项目jar包运行时图片上传及显示问题。
        上传图片最常见的就是直接上传到服务器的webapp目录下,或者直接上传服务的一个指定的文件夹下面,但是当项目以jar包方式运行时呢?此时上传还能正常上传只要已经建立相应的文件夹,但是显示的时候会找不到已经上传的图片资源,这时候我们需要在运行jar时将存放图片的文件夹加到springboot的classpath下,之后就可正常显示。需要了解的是springboot默认加载文件的路径:

  • /META-INF/resources/
  • /resources/
  • /static/
  • /public/

此处将项目图片指定存放在/static/下,所以代码中将图片路径指定为
private final String photoFolder="static/photo/";
启动之前在服务器建立文件夹
        static/photo/
在运行jar包时输入命令为:
         java -cp static -jar ***.jar
即将static整个文件夹映射到了jar里的static。图片上传时会上传到指定的文件夹下,加载的时候也能加载出来。

-----------------------

idea 部署SpringBoot项目时打成jar包一些坑的总结

https://blog.csdn.net/qq_33206732/article/details/79171393

本文提到:

SpringBoot部署到服务器,首先我们需要将项目打成jar包,然后上传到服务器上,在执行jar。

spring-boot-maven-plugin

SpringBoot打成jar包我们一般使用spring-boot-maven-plugin这个插件,当配置了该插件后,运行“mvn package”进行打包时,会打包成一个可以直接运行的 JAR 文件,使用“java -jar”命令就可以直接运行。这在很大程度上简化了应用的部署,只需要安装了 JRE 就可以运行。

当然该插件在使用的时候有一个属性需要知道一下start-class,因为SpringBoot项目的启动类是一个main方法,所以我们在使用插件打包的时候需要注意一下,如果不注意可能会报错,下面会写。为什么说需要注意start-class这个属性呢,是因为spring-boot-maven-plugin在打成jar包时会默认找public static void main(String[] args){*}方法,这时候如果你的项目有多个main方法,这时候就会有问题了,所以你可以删掉其他的main方法,只留SprngBoot的入口main方法,或者在pom.xml中用上述属性指定你的项目指定方法,比如: 
这里写图片描述
上面的就是我指定的BinggouLogAnalysisApplication这个里面的启动类。当然我建议无论你是否有多个main方法,都指定一下,防止以后多一个main方法,到时候报错,不知道为啥。

------------------------------------

spring boot打jar包发布的方法

https://www.jb51.net/article/142732.htm

讲述了什么时候打war包,什么时候打jar包。  打jar包只需要有jre就可以运行,不需要tomcat。

-----------------------------------

如何将spring boot工程打成JAR包到服务器上运行

https://blog.csdn.net/whh743/article/details/65443592

只需在项目的pom.xml中加入下面插件
<build>
        <plugins>
                <plugin>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-maven-plugin </artifactId>
                </plugin>
               <plugin>
                       <groupId>org.springframework.boot</groupId>
                       <artifactId>spring-boot-maven-plugin</artifactId>
                        <executions>
                                <execution>
                                        <goals>
                                                <goal>repackage</goal>
                                        </goals>
                                </execution>
                       </executions>
               </plugin>
        </plugins>
</build>
然后执行mvn package,就可以在target文件夹下找到生成的jar包
然后运行 java -jar ****.jar即可

-----------------------
 

猜你喜欢

转载自blog.csdn.net/jintingbo/article/details/82780745