1. 程式人生 > >Maven+Jetty執行專案無法熱修改html處理

Maven+Jetty執行專案無法熱修改html處理

一直以來都在做後端工程的開發,很少做前端設計,最近工作需要開始做前端開發,感覺“辛辛苦苦幾十年,一朝回到解放前”的節奏啊,遇到不少問題,記錄下來以備後查。

今天在使用Maven+Jetty執行JavaWeb工程時,發現無法在執行狀態下修改JS、HTML檔案,即無法熱修改,網上搜了一下,整合了很多文章最終搞定。

現象
此時在Eclipse中修改index.html檔案時
不允許進行修改。 原因:如果NIO被支援的話,Jetty會使用記憶體對映檔案來快取靜態檔案,其中包括.js檔案。在Windows下,使用記憶體對映檔案會導致檔案被鎖定。解決方案是不使用記憶體對映檔案來做快取。(摘自參考文章)

1.在你使用的Jetty版本的jetty.jar中找到webdefault.xml,它在jar檔案中的路徑是

org/eclipse/jetty/webapp/webdefault.xml。把它拷貝到專案中,比如src/main/resources/webdefault.xml。

此處我們使用的Jetty Plugin版本為:8.1.8.v20121106,對應的Jetty在(注意:不同的Jetty版本位置可能不一樣)

如果不知道Jetty在哪直接執行一下專案就能看到所用的Jetty版本(jetty7之前是一個jetty包,7之後拆分為了多個,我們要使用的檔案在jetty-webapp下)


2.找到useFileMappedBuffer引數,把值設成false


3.在pom.xml中,設定jetty使用更新過的webdefault.xml檔案。


<defaultsDescriptor>src/main/resources/webdefault.xml</defaultsDescriptor>

這樣就在執行時也可以修改js和css了。




親測通過 參考文章:

相關推薦

Maven+Jetty執行專案無法修改html處理

一直以來都在做後端工程的開發,很少做前端設計,最近工作需要開始做前端開發,感覺“辛辛苦苦幾十年,一朝回到解放前”的節奏啊,遇到不少問題,記錄下來以備後查。 今天在使用Maven+Jetty執行JavaWeb工程時,發現無法在執行狀態下修改JS、HTML檔案,即無法熱修改,網

idea使用jetty啟動專案無法修改JS檔案

使用mvn jetty:run web開發時,經常會遇到無法修改js檔案問題,一修改就會報錯: 詳細介紹參考:參考文件 jetty 預設開啟了 useFileMappedBuffer,在 jetty 執行期間,頁面所使用的靜態檔案(如 css 檔案等)不允許修改。如果你嘗試去修改它 們,儲存

idea maven jetty 執行時不能儲存修改的js檔案

感謝前輩分享, 本文參考其他部落格而成。 問題: 在idea中使用maven-jetty外掛執行web專案, 專案執行中修改js會提示不能儲存。 如圖: Following errors occurred on attempt to save files: 解決:修改je

maven學習筆記之IDEA+Maven+Jetty執行一個簡單的web專案

maven學習筆記一、什麼是mavenMaven是一個專案管理工具,它包含了一個專案物件模型 (Project Object Model),一組標準集合,一個專案生命週期(Project Lifecycle),一個依賴管理系統(Dependency Management System),和用來執行定義在生命週

基於Maven的SpringBoot專案實現部署的兩種方式

前言 JRebel是JavaEE中比較流行的熱部署外掛,可快速實現熱部署,節省了大量重啟時間,提高了個人開發效率。看一張圖就知道了: 我這裡提到JRebel的目的主要是說明熱部署工具帶來的優勢:節省時間,提高開發效率 下面我將介紹使用maven構建的S

MyEclipse 中build path選中不了,maven專案無法編譯,maven建立的專案無法釋出到tomcat

1:開啟專案中的.projects檔案,在natures 標籤中檢視是否有以下些nature標籤 <nature>com.genuitec.eclipse.ast.deploy.core.deploymentnature</nature><n

maven】進行專案部署

一  修改tomcat-user.xml配置檔案 -rw-------. 1 root root   2294 Jan 20 05:37 tomcat-users.xml -rw-------. 1 root root 168893 Sep 29 05:27 web.xml

maven依賴的專案無法打包

今天在一個子專案開發完成準備做另外的子專案,但需要依賴已經做好的子專案,始終無法打成jar包,最終在網上找到解決方法。將maven裡面的***.lastUpdate 和 _remote.propert

myeclipse中maven本地倉庫地址無法修改的問題解決

        當我們再{maven}/conf/settings.xml檔案的localRepository下修改maven本地倉庫地址之後,發現並沒有生效,於是首先我先去看了各個解釋,幾乎全都搜到了這麼一篇文章:    https://blog.csdn.net/zjt9

maven-jetty執行除錯細節

有道雲筆記 連線: http://note.youdao.com/noteshare?id=5cf04b6b7f1e7bfaa73074ea08a4b095 ---------------------------------------------------------

idea 使用maven外掛進行部署專案(解決修改後重新打包無法起效問題)

問題:平時我們開發完成需要進行專案部署到伺服器,通常做法手動打包,在linux下上傳並部署。這種在單個專案部署還好,當專案中分很多子專案時,這是一件頭疼事情。 解決:maven提供外掛進行在idea中直接部署。 步驟1:開啟Tomcat許可權。配置D:\apach

maven jetty 啟動後,不能修改靜態文件,js,css,html

9.4 拷貝 ram 啟動 maven pom jar包 conf text 解決辦法: 1.從jetty的jar包中(位置可能不同,有的jetty-web中)拷貝一份webdefault.xml文件 2.將webdefault.xml 中的useFileMappedBuf

Intellij IDEA新建maven專案無法執行/新建Maven專案時沒有servlet選項

Intellij IDEA新建maven專案無法執行  Edit Configurations中無法找到Main Class 解決辦法1  隨便修改一下pom.xml,右下角會彈出一個對話方塊    點選Enable Auto-Import 重

eclipse使用jetty執行maven專案

主要pom.xml裡面配置 <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <version&

maven專案 無法執行main方法的問題。java.lang.ClassNotFoundException

最近一直遇到這麼一個問題,很納悶。我的專案 build path 是以下設定src/main/javasrc/main/resources但是自己重構了這麼一個目錄結構後,main方法無法執行,一直報錯java.lang.ClassNotFoundException後來經過測

Springboot專案修改html後不需要重啟---springboot專案部署

一、spring-boot-devtools  在pom中直接引入依賴<dependency> <groupId>org.springframework.boot</groupId> <artifact

idea+jrebel解決springboot下html修改無法部署問題

1.idea下安裝jrebel. File - setting - plugins 輸入jrebel 點選搜尋安裝. 2.安裝後重新啟動idea,後看到 File -setting 目錄下會出現 Jrebel,這時還是未啟用狀態,需要登入官網註冊啟用或者通過破解的形式啟用.

idea新建Maven專案部署及其配置tomcat直接執行方法

熱部署方法: 1)在配置tomcat選擇Artifies的時候,選擇exploded字尾的war包 2)在Server選項頁面下的on 'update' action 和 on frame deactivaction選項,選擇update classes and reso

Eclipse筆記-Maven專案無法編譯執行src/test/java下的程式碼

在匯入Maven專案或者新建一個Maven專案的時候,發現src/test/java下的程式碼無法編譯,執行的時候會報錯說找不到類載入的資源,明明已經將src/test/java以及src/test/resources這兩個資料夾都設定成 Source Fold

maven專案jetty執行配置

<plugins>             <!--編譯外掛-->             <plugin>                 <artifactId>maven-compiler-plugin</arti