1. 程式人生 > >struts2改spring boot過程中一些問題及解決辦法記錄

struts2改spring boot過程中一些問題及解決辦法記錄

1、引入依賴包的問題
一般情況下,常用的jar包在maven倉庫都可以找到,並能知道如何在pom.xml檔案中配置,但是有時候需要在一些專案中使用一些我們自己寫的程式碼生成的jar包,要引入maven中就需要做一些必要的處理。
我們專案中就有這樣的情況存在,以下是處理方式之一,就是用maven的命令生成maven方式的jar,然後加入到本地庫中引用,打包命令如下:

mvn install:install-file -Dfile=huateng-comm-1.0.0.jar -DgroupId=com.huateng  -DartifactId=huateng-comm -Dversion
=1.0.0 -Dpackaging=jar

2、使用maven給spring boot專案打jar包的問題
2.1、由於eclipse中預設配置的 installed jres是jre而不是jdk,導致打包時丟擲如下異常:

Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

解決辦法是把eclipse中的installed jres改為jdk。

2.2、沒有指定啟動類導致打包丟擲如下異常
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project mobileShopFrontDemo: There are test failures.
解決辦法是在maven的pom.xml檔案中做如下配置:
com.MobileShopFrontDemoApplication
也就是指定啟動類。

3、logback相關jar版本問題:
原本非spring boot的老專案使用的logback版本是1.1.2,現在用了spring boot1.4.3,預設引入的logback的版本是1.1.7。
在原本的專案中logback.xml檔案中有如下日誌配置:

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <Encoding>UTF-8</Encoding>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>G:/logs/${app_name}_%d{yyyy-MM-dd}_%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> 
                 <maxFileSize>200MB</maxFileSize> 
            </timeBasedFileNamingAndTriggeringPolicy>       
            <maxHistory>365</maxHistory>
        </rollingPolicy>
          ...... 
    </appender>

新的spring boot專案在不改動logback.xml的情況下啟動丟擲如下異常:

Exception in thread "main" java.lang.IllegalStateException: Logback configuration error detected: 
ERROR in [email protected]:13 - no applicable action for [Encoding], current ElementPath  is [[configuration][appender][Encoding]]

解決辦法是去掉如下配置:

<Encoding>UTF-8</Encoding>

4、啟動spring boot的啟動類丟擲異常
這個問題其實怪自己,我用maven生成了專案的jar在cmd視窗執行著,但是忘記了這件事,又在eclipse中啟動了這個專案,從而導致端口占用,eclipse中啟動不起來。
只不過在檢視控制檯的錯誤的時候,我從下網上看,首先看到的是如下異常:

Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.server.NetworkConnector
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

於是我以為是jetty的什麼問題,就去網上搜了一下,但是還沒搜出結果的時候我偶然想起來在cmd視窗還啟動著一個應用,於是去控制檯一看,果然看到了這樣的提示:

java.net.BindException: Address already in use: bind
    at sun.nio.ch.Net.bind(Native Method)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:124)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
    at org.eclipse.jetty.server.nio.SelectChannelConnector.open(SelectChannelConnector.java:187)
    at org.eclipse.jetty.server.AbstractConnector.

很顯然是埠被佔用了,換個新的埠,成功啟動。

相關推薦

struts2spring boot過程一些問題解決辦法記錄

1、引入依賴包的問題 一般情況下,常用的jar包在maven倉庫都可以找到,並能知道如何在pom.xml檔案中配置,但是有時候需要在一些專案中使用一些我們自己寫的程式碼生成的jar包,要引入maven中就需要做一些必要的處理。 我們專案中就有這樣的情況存在,

LoadRunner 使用過程問題解決辦法記錄

1.web_find()插入檢查點回放錯誤 Action.c(83): Error -27985: There is no context for HTML-based functions. A previous function may not have used "Mo

spring-bootspring.jackson.date-format失效解決辦法

spring-boot 版本 <parent> <groupId>org.sp

Spring-boot報錯集解決方案

*************************** 申請未能開始******************* ********  描述:  無法配置DataSource:未指定'url'屬性,也無法配置嵌入資料來源。  原因:無法確定合適的驅動程式類   &n

樹莓派學習(一)——樹莓派安裝系統的過程、問題解決辦法

shu fat 基於 淘寶 conf 添加 最重要的 access eboot 前言——   買了兩三周的樹莓派,現在才把樹莓派安裝配置好系統,真的是想抽自己兩耳巴子。不過這個月實在太忙了,又是實習,又是忙著畢業雜事,心裏頗不寧靜。這兩天周末,又重新搗鼓了一下樹莓派,準備記

mysql5.7.19在centos虛擬機器下手動(離線)安裝配置過程一些問題解決辦法

一、centos下手動配置MySQL資料庫 1.下載MySQL資料庫官網: https://dev.mysql.com/downloads/mysql/  我下載的是mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz 2.通過winscp軟

關於Hibernate配置資料庫訪問過程中報錯解決辦法

使用Hibernate對MySQL資料庫中的表資料進行增刪改查操作過程中出現的問題及解決辦法:1. 缺少日誌檔案配置。解決辦法:首先確認是否添加了log4j-**.jar和self4j-log4j****.jar包,然後在src下新增log4j.properties檔案,其內

[轉]IntelliJ IDEA 使用spring-boot-devtools熱部署無效解決辦法

  來源:https://www.jianshu.com/p/4d8aa6dfd103   相信大部分使用IntelliJ IDEA的同學都會遇到這個問題,即使專案使用了spring-boot-devtools,修改了類或者html、js等,idea還是不會

Unity3D 5.x 啟動過程 License Error 解決辦法

新安裝了Unity3D的最新版本5.4 ,啟動過程中執行"Check License"步驟的時候報錯,"License Error" ,說我沒有License。 Unity3D不是對普通使用者免費嗎?幹嘛不讓我用啊? 這讓我鬱悶了好久。我是按照“註冊帳號--下載--安裝--

spring-boot上傳檔案最佳解決辦法

很多人使用springboot上傳檔案的時候最煩的就是上傳路徑的問題 下面的方法最便捷 最易懂 在配置檔案中配置如下 xcloud: #uploadPath: D:/var/uploaded_files/ uploadPath: C:/Users/re

laravel框架使用錯誤解決辦法總結

auto laravel 輸入 裏的 原因 情況 autoload san 錯誤 1.Laravel訪問出錯錯誤信息:`Warning: require(/vendor/autoload.php):failed to open stream: No such file or

oracle啟動/停止的幾種方法以及 啟動和停止過程出錯的解決辦法

一、啟動幾種方法: 1、 sqlplus /nolog connect /as sysdba startup 2、 sqlplus /nolog connect /as sysdba startup nomount alter database mount alter database o

namenode gc故障解決辦法記錄

namenode問題:WARN org.apache.hadoop.hdfs.qjournal.client.QuorumJournalManager: Waited 19016 ms (timeout=20000 ms) for a response for sendEdits. Succeeded so

Spring boot 整合Spring Security過程的出現的關於Session scope的異常排查解決方案

背景介紹 最近做的一個專案,其一需要用到Spring 的oauth認證功能, 其二需要對spring 的ContextRefreshedEvent 這個事件進行監聽,實現一部分自定義註解的功能(具體功能不作贅述),本來以為毫不相關的兩個功能,卻出現了一些意料之

spring學習過程遇到的問題解決,eclipse使用過程的問題

這學期的課程安排是學習Spring+MyBatis,使用的教材是《Spring+MaBits企業應用實戰》作者:瘋狂軟體 spring方面的已經學完由一星期的,我把最近學習過程中出現的問題和解決方法的記錄,寫下來,也可以去我的資源裡面下載word版本。 1. 中文亂碼問題: 1.

ubuntu12.04 在編譯u-boot過程遇到的問題解決方法

本文記錄自己學習zeboard開發過錯中碰到的問題。 本文以《嵌入式系統軟體硬體協同設計實戰指南》第2版13.2.2節中編譯u-boot為基礎,按照書中的方法碰到有以下幾個問題 1.openssl/ssl.h這裡是庫檔案缺失,執行命令 $ sudo apt-get inst

SQLin參數在存儲過程傳遞使用的方法

str pro let 字符 spl eva lec creat create 背景: 1、使用存儲過程 2、存儲過程中有in 3、in括號裏面的內容作為參數傳遞 解決方案: 1、直接拼接sql 可在存儲過程中拼接字符串,然後執行此字符串,類似於js中的eval PROC

struts2 vs spring boot

2017年 struts 那是 風格 -- 行業 java 2.3 代碼 2018年5月19日,和老越長談一下午,商定周一開始來他公司上班。 10年前,我倆是同事,打算一起開公司的。或是由於行事風格不同,或其他原因,公司名申請下來之後,就不了了之了。不久,老越就辭職了;而我

手機端頁面在項目遇到的一些問題解決辦法

文本 phone 發生 box art 單選框 打電話 但是 href 前言:前段時間遇到點移動端的問題,網上查找點資料,看到一個挺不錯帖子,所以轉載分享給大家。 1.解決頁面使用 overflow: scroll 在 iOS 上滑動卡頓的問題? 首先你可能會給頁面的 ht

spring boot專案使用@Slf4j註解

1、在pom.xml中引入lombok的依賴 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </depe