`

Eclipse中maven环境使用jetty启动后不能保存更改后的css,js等静态文件的解决方法

阅读更多

【问题现象】:

     使用Maven + Eclipse + Jetty 进行J2EE开发,但有一个问题就是css、js等静态文件更改以后,在eclipse里保存都会失败,eclipse给出的错误信息是文件被锁定,这样迫使每次都得重启Jetty,对开发非常不方便。

 

【原因分析】:

    Jetty会使用内存映射文件来缓存静态文件,包括js,css文件。

    在Windows下,使用内存映射文件会导致文件被锁定,所以当Jetty启动的时候无法在编辑器对js或者css文件进行编辑。

 

【解决方案】:

 

      更改Jetty默认配置,不适用内存映射文件来做缓存。

 步骤:

     1.找到webdefault.xml,在本地仓库中找到jetty插件,以6.1.26版本为例,jetty-6.1.26.jar在$maven_repo$/org/mortbay/jetty/jetty/6.1.26/jetty-6.1.26.jar,webdefault.xml文件在包org\mortbay\jetty\webapp下。

   它在jar文件中的路径是org/mortbay/jetty/webapp/webdefault.xml

 

  2.找到useFileMappedBuffer参数,把值设成false
    <init-param>
        <param-name>useFileMappedBufferparam-name>
        <param-value>false<param-value>
    init-param>

  3.在pom.xml中,设置jetty使用更新过的webdefault.xml文件

    <groupId>org.mortbay.jettygroupId>
    <artifactId>maven-jetty-plugin<artifactId>
    <version>6.1.26</version>
    <configuration>
        ...
        <webAppConfig>
           <defaultsDescriptor>src/test/resources/webdefault.xml</defaultsDescriptor>
        </webAppConfig>
    <configuration>

  大功告成!

 

 

捐助分享者

          以前并不喜欢编程,但是现在已经是一个为程序而痴迷的IT迷,在此分享一些自己整理并优化后的东西,希望能给IT迷们有所帮助,有欣喜,也还有汗水,同时也希望大家能支持一下。 当然,有钱捧个钱场(支持支付宝和微信捐助,加入it资料中心扣扣群),没钱捧个人场,有了大家的支持,我们会更有动力,会做的更好的,谢谢各位。

 

分享到:
评论

相关推荐

    Maven Jetty 插件的问题(css/js等目录死锁)的解决

    ### Maven Jetty 插件的问题(css/js等目录死锁)的解决 #### 背景介绍 在软件开发过程中,Jetty作为一个轻量级的Web服务器,常常被用于Java Web项目的开发与测试环境中。然而,在使用Maven Jetty插件进行项目构建...

    eclipse+maven创建web项目

    Eclipse是一款流行的Java集成开发环境(IDE),它为开发者提供了丰富的功能,包括代码编辑、调试、构建等。当我们需要在Eclipse中创建一个Web项目时,结合Maven可以使得项目管理和构建过程更加规范和高效。以下将...

    Eclipse Spring Boot maven web demo 简单项目实例

    【Eclipse Spring Boot Maven Web Demo 简单项目实例】是一个实用的学习资源,旨在帮助开发者快速搭建基于Spring Boot、Maven和Eclipse的Web应用程序。这个项目实例为初学者提供了良好的起点,让他们能够理解并实践...

    maven创建webapp

    2. 在 `webapp` 目录下创建 `resources` 目录,用于存放静态资源如 CSS 和 JS 文件。 3. 删除默认的 `index.jsp`。 4. 在 `src/main/java` 中创建三层包结构,这有助于组织代码。 5. 如果你的 JDK 是 1.6,确保项目...

    jetty8+ 内嵌式启动运行demo

    本教程将深入探讨如何使用Jetty 8进行内嵌式启动运行,这对于开发和测试环境非常有用,因为它简化了部署流程。 首先,我们来理解什么是内嵌式Web服务器。内嵌式Web服务器是将Web服务器功能直接整合到你的应用程序...

    jetty-6.1.2rc2.zipjetty-6.1.2rc2.zipjetty-6.1.2rc2.zipjetty-6.1.2rc2.zip

    6. **静态文件服务**:Jetty能够快速地处理静态资源,如HTML、CSS和JavaScript文件。 7. **Servlet和Filter支持**:Jetty遵循Servlet规范,支持Servlet和Filter的部署和配置。 8. **WebSocket支持**:虽然6.1.x版本...

    jetty 插件

    Jetty插件是一种用于集成Jetty服务器到开发环境或...总的来说,Jetty插件是Java Web开发中不可或缺的一部分,它使得Jetty服务器的使用变得更加简单和高效,无论是在开发阶段还是在生产环境中,都能为开发者带来便利。

    前端开源库-jetty

    开发者可以使用Jetty来托管静态HTML、CSS、JavaScript文件以及图片等资源,无需部署到完整的生产环境。这极大地提高了开发效率,尤其是在快速迭代和调试阶段。 **3. 集成到前端项目** - **安装与配置:** 使用...

    Maven-Simple-WebApp

    **Maven-Simple-WebApp** 是一个基于Maven构建的简单Web应用程序示例,源自《Maven权威指南》第五章中的内容。这个项目旨在帮助读者理解和掌握如何使用Maven来构建和管理Java Web应用程序。在本文中,我们将深入探讨...

    简单的用maven搭建restful服务

    一旦开发完成,可以使用Maven打包应用为可执行的JAR或WAR文件,然后将其部署到服务器上,如Tomcat或Jetty,或者使用Docker容器化部署。 通过以上步骤,我们可以利用Maven成功地搭建一个RESTful服务。这个过程展示...

    spring-boot-maven的web完整项目框架

    2. **src/main/resources**: 存放资源文件,如配置文件(application.properties 或 YAML)、静态文件(js、css、img)、模板文件(Thymeleaf 或 FreeMarker)等。 3. **pom.xml**: Maven 的配置文件,定义了项目的...

    Jetty Sample

    此外,这个示例还可能展示如何在开发环境中集成Jetty,比如使用IDEA或Eclipse的插件进行调试。 总的来说,`JettySample`是一个很好的起点,可以帮助初学者快速上手Jetty,同时对有经验的开发者来说,也是检验新功能...

    Maven 3 入门 -- 如何创建一个web应用程序

    这可以通过命令行使用 `mvn archetype:generate` 命令完成,或者在 IDE(如 IntelliJ IDEA 或 Eclipse)中使用内置的 Maven 支持。 2. **选择 Archetype**: 在生成新项目时,我们需要选择一个 Archetype,这将决定...

    HRSystem_Eclipse.rar_ssh eclipse_ssh mysql eclipse_ssh mysql jav

    【标题】"HRSystem_Eclipse.rar" 涉及到的是一个基于SSH框架(Struts2、Spring、Hibernate)在Eclipse集成环境中开发的人力资源管理系统。SSH是一种流行的企业级Web应用开发框架,用于构建高效、可扩展的Java应用...

    Java开发之普通web项目转为Maven项目的方法

    将原本位于`WebRoot`下的静态资源(如js、css、jsp等)剪切到`webapp`目录下,同时删除`WebRoot`文件夹。特别地,`WEB-INF`目录也需要保留并移到`webapp`内。 6. **重新部署与测试**: 将转换后的Maven项目重新...

    工一说javaweb之smbms实战静态资源.zip

    - `css`、`js`、`img`等目录:存放静态资源文件,直接由浏览器访问。 4. **开发工具**: - IDE(Integrated Development Environment):如Eclipse、IntelliJ IDEA,用于编写和调试代码。 - Tomcat、Jetty等Web...

    springboot环境

    2. 如果你使用的是IDEA或Eclipse这样的集成开发环境,导入该项目为Maven项目。 3. 在IDE中运行主应用程序类,通常含有`public static void main(String[] args)`方法并标记为@SpringBootApplication。 4. SpringBoot...

    使用jsp+servlet+java bean+jdbc实现功能,外加html+css+js手捏页面的图书管理系统.zip

    开发过程中,开发者可能使用IDE如Eclipse或IntelliJ IDEA进行编码,使用Maven或Gradle进行项目管理和依赖管理。调试时,可以通过内置服务器启动应用,进行本地测试,同时日志系统如Log4j可以帮助跟踪和记录程序运行...

    打包war

    而"工具"标签则暗示了可能会介绍使用特定的开发工具或者构建工具来完成打包任务,比如IDEA、Eclipse等集成开发环境,或者Maven、Gradle等构建工具。 【压缩包子文件的文件名称列表】:1.html 单个文件“1.html”...

    java毕业设计之毕业生离校未就业管理系统的设计与实现(web)源码.zip

    5. 资源文件:如图片、CSS样式表、JavaScript脚本等静态资源。 在部署和运行项目时,你需要: 1. 配置Java环境变量,确保JDK能够正常工作。 2. 安装并配置Maven,将项目导入IDE(如IntelliJ IDEA或Eclipse)。 3. ...

Global site tag (gtag.js) - Google Analytics