原因是Jetty会使用内存映射文件来缓存静态文件,其中包括js、css文件。在Windows下面,使用内存映射文件会导致文件被锁定。解决方案是不使用内存映射文件来做缓存。步骤如下:
1)在所使用Jetty版本的jar中找到webdefault.xml,把它拷贝到项目中,比如src/main/resources/webdefault.xml。
对jetty6,jar文件在$maven_repo$/org/mortbay/jetty/jetty/6.x/jetty-6.x.jar,webdefault.xml文件在包org\mortbay\jetty\webapp里;
对jetty7,jar文件在$maven_repo$/org/eclipse/jetty/jetty-webapp/7.x/jetty-webapp-7.x.jar\,webdefault.xml文件在包org\eclipse\jetty\webapp里。
2)找到webdefault.xml文件里的useFileMappedBuffer参数,把值设成false。
3)在pom.xml中,设置jetty使用更新过的webdefault.xml文件。
jetty6:
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.x</version>
<configuration>
<webDefaultXml>src/main/resources/webdefault.xml</webDefaultXml>
</configuration>
jetty7:
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>7.x</version>
<configuration>
<webAppConfig>
<defaultsDescriptor>src/main/resources/webdefault.xml</defaultsDescriptor>
</webAppConfig>
</configuration>
这样在运行时就可以修改js、css等文件了。
修改后eclipse控制台会输出如下信息:[INFO] Web defaults = src/main/resources/webdefault.xml
分享到:
相关推荐
通过以上步骤,可以有效地解决使用Maven Jetty插件时出现的CSS、JS等文件被锁定的问题。这一解决方案不仅有助于提高开发效率,还能确保开发过程中静态资源的实时更新,从而提升整体的开发体验。
如果部署到生产环境,则需要将项目打包成JAR文件并运行。 3. **服务消费者(Consumer)** - **引入依赖JAR** 在`fams-web`模块中引入`fams-common`和`fams-api`的JAR包。 - **配置dubbo-consumer.properties*...
它提供了一套完整的解决方案,包括服务发现、配置管理、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群状态等。Spring Cloud的主要组件有: 1. Eureka:服务注册与发现,它...
总的来说,这个压缩包提供的是一套使用Scala STM实现的并发控制解决方案,以及一个基于Jetty的会话管理测试框架,该框架使用Memcached作为后端存储,且所有这些都是开源的,鼓励社区参与和改进。通过学习和使用这些...
4. **运行时健康检查**:提供了一组默认的健康检查端点,可以监控应用的状态。 5. **命令行界面**:Spring Boot CLI可以快速创建和运行Spring应用程序。 SpringCloud则是一个基于SpringBoot实现的云应用开发工具集...
反射允许我们在运行时动态地获取类的信息并操作对象,这对于插件化开发和元编程非常有用。流(Stream API)是Java 8引入的新特性,它使得对集合的处理更加简洁和高效。 在数据库访问方面,JDBC(Java Database ...
【标题】"基于SpringBoot、SpringCloudAlibaba、SpringAuthorizationS"所指的是一套完整的微服务架构解决方案,其中融合了三个关键的技术栈:SpringBoot、SpringCloud Alibaba以及Spring Authorization Server。...
3. 动态建模:Achilles允许在运行时动态创建和修改数据模型,这在处理变化频繁的业务需求时非常有用。 4. 异步操作:为了提高性能,Achilles支持异步操作,可以在不阻塞主线程的情况下执行数据库操作。 5. 事务支持...
为了运行这个游戏,你需要一个支持JSP和Servlet的服务器环境,如Apache Tomcat或Jetty。将游戏相关的文件部署到服务器上,然后通过浏览器访问指定URL即可开始游戏。同时,确保你的系统已经安装了Java运行环境(JRE)...
2. `jetty.xml`文件用于配置内置的Jetty服务器,用于提供Web管理界面。 3. 可通过`system.properties`文件设置系统属性。 **使用Apache ActiveMQ:** 1. 创建和管理主题与队列:Web管理界面允许创建、删除、查看和...
- **统计(metrics)**:收集系统运行时统计数据。 - **工具类(util)**:提供一系列常用工具方法。 - **记录(record)**:根据数据描述语言(DDL)自动生成编解码函数。 - **HTTP服务(http)**:基于Jetty实现的...
3. **内嵌容器**:SpringBoot默认集成了Tomcat、Jetty等应用服务器,使得开发和部署更加便捷,不再需要单独打包成war文件并部署到外部服务器。 4. **Actuator**:提供了健康检查、指标收集、审计跟踪等功能,帮助...
1. **角色定位**:Secondary NameNode的主要任务是定期合并NameNode的元数据文件FSImage和EditLog文件,减轻NameNode的内存压力,确保系统的稳定运行。它并不直接参与用户数据的读写操作,而是在后台默默工作,维持...
Spring Boot简化了Spring应用的初始搭建以及开发过程,而Spring Cloud则为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群...
它通过内嵌的Servlet容器(如Tomcat或Jetty),自动配置Spring框架,并提供了一种“即插即用”的特性,使得开发者可以快速地创建独立运行的、生产级别的基于Spring的应用程序。 二、1.1.6.RELEASE版本的关键特性 1...
它内置了 Tomcat 或 Jetty 服务器,使得应用可以无需额外的容器即可运行。Spring Boot 的核心理念是“约定优于配置”,这使得开发者能够减少大量的配置工作,更加专注于业务逻辑。 【微服务架构】 微服务架构是一...
这个系统架构旨在提高开发效率,提供微服务化的解决方案,以及灵活的扩展能力。 **SpringBoot** SpringBoot是由Pivotal团队提供的全新框架,它简化了Spring应用程序的初始搭建以及开发过程。它集成了大量常用的第三...
解决幂等问题可以通过版本号控制、唯一键、乐观锁等机制来实现。 ### 并发控制 当多个线程同时读写数据时,特别是在读多写少的场景下,为保证数据一致性,需要考虑并发控制。常见的锁有读写锁...
* -l long listings,会打印出额外的锁信息,在发生死锁时可以用 jstack -l pid 来观看锁持有状况 * -m mixed mode,不仅会输出 Java 堆栈信息,还会输出 C/C++ 堆栈信息(比如 Native 方法) jstack 可以定位到...
Spring Cloud是一个基于Spring Boot实现的云应用开发工具集,它为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群状态)...