1. 程式人生 > >關於springboot專案jar包執行時圖片上傳及顯示問題

關於springboot專案jar包執行時圖片上傳及顯示問題

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即可

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