使用Maven + Eclipse + Jetty 进行开发,但有一个问题:那就是如果已经运行着Jetty,在这种情况下修改.js文件,在eclipse里保存都会失败,eclipse给出的错误信息是文件被锁定。这样迫使每次都得重启Jetty,对Javascript的开发非常不方便。
原因是如果NIO被支持的话,Jetty会使用内存映射文件来缓存静态文件,其中包括.js文件。在Windows下面,使用内存映射文件会导致文件被锁定。解决方案是不使用内存映射文件来做缓存。如果你使用Maven,那就很简单了。步骤如下:
找到jetty.jar后解压,从中找到webdefault.xml,它在jar文件中的路径是org/mortbay/jetty/webapp/webdefault.xml。把它拷贝到项目中,比如src/test/resources/webdefault.xml.
找到useFileMappedBuffer参数,把值设成false
<init-param>
<param-name>useFileMappedBuffer</param-name>
<param-value>true</param-value> <!-- change to false -->
</init-param>
在pom.xml中,设置jetty使用更新过的webdefault.xml文件
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.10</version>
<configuration>
<contextPath>/</contextPath>
<scanIntervalSeconds>3</scanIntervalSeconds>
<scanTargetPatterns>
<scanTargetPattern>
<directory>src/main/webapp</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</scanTargetPattern>
</scanTargetPatterns>
<webDefaultXml>src/main/resources/webdefault.xml</webDefaultXml>
<defaultsDescriptor>webdefault.xml</defaultsDescriptor>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>9093</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
</connectors>
</configuration>
</plugin>
好了,这样就解决问题了!
分享到:
相关推荐
详细介绍Eclipse+maven+jetty开发环境搭建
利用maven搭起的Spring MVC+Mybatis框架,并带有数据库表结构,使用者可直接导入mysql使用,有主外键关系
java开发中Eclipse+maven+jetty环境配置
springmvc+maven+ibatis+jetty的pom配置文件,平时书写太麻烦
SSM+MAVEN简单实现了一个查询数据库功能,导入即可使用,配有数据可以表
一、安装Maven与设置环境 二、安装m2eclipse插件(不是必需的,这里我没安装) 三、修改仓库位置 四、创建maven项目 五、编译项目代码 六、导入eclipse工具 ...八、eclipse+struts2+maven2+jetty Maven中常用命令
1、Testng+selenium+Maven+WebDriver+Java+eclipse 实现禅道登录,百度搜索。 2、eclipse需安装Testng+selenium+Maven 3、下载对应版本的WebDriver驱动。Chrome驱动下载地址...
使用 spring mvc + maven 创建的一个简单的文件上传下载, 可以使用jetty 直接运行(mvn jetty:run)
spring mvc3.2.7(基于注解配置)+servlet3.1(jetty)+maven3+eclipse
一个相对简单但比较完整的基于spring+springmvc+mybatis+mysql+maven+eclipse的工程实例,适合初学者参考
maven+tomcat+eclipse配置实例
eclipse+maven+springmvc+spring+mybatis案例附带mysql数据库
Java+MySQL+SQLyog+tomcat+maven+eclipse+mariadb 一健解压安装的软件包
eclipse下SpringMVC+Maven+Mybatis+MySQL项目搭建
Maven+Eclipse+SpringMVC+MyBatis实例,使用了dao和mapper两种方式
NULL 博文链接:https://saberhaha.iteye.com/blog/1173052
用Maven+Eclipse Neon配置Hibernate5例子