zoukankan      html  css  js  c++  java
  • 【技术贴】第二篇 :解决使用maven jetty启动后无法加载修改过后的静态资源

    之前写过第一篇:【技术贴】解决使用maven jetty启动后无法加载修改过后的静态资源

    一直用着挺舒服的,直到今天,出现了又不能修改静态js,jsp等资源的现象。很是苦闷。 经过调错处理之后,发现是jetty报错,可以如下修改解决,jetty defaultsDescriptor 不起作用

    在web.xml中新的正确配置如下(使用版本:jetty -> install/jetty-distribution-7.2.0)

    <servlet> 
    
            <servlet-name>default</servlet-name> 
    
            <!-- <servlet-class>org.mortbay.jetty.servlet.DefaultServlet</servlet-class> --> 
    
            <servlet-class>org.eclipse.jetty.servlet.DefaultServlet</servlet-class> 
    
            <init-param> 
    
                <param-name>useFileMappedBuffer</param-name> 
    
                <param-value>false</param-value> 
    
            </init-param> 
    
            <load-on-startup>0</load-on-startup> 
    
        </servlet> 

    另转载一份jetty问题总结

    1、由于jetty交eclipse组织接管之后,将org.mortbay.jetty.servlet.DefaultServlet修改为org.eclipse.jetty.servlet.DefaultServlet。否则报错

    2012-03-07 10:43:00.089:WARN::EXCEPTION 
    java.lang.ClassNotFoundException: org.mortbay.jetty.servlet.DefaultServlet 
            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) 
            at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
            at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:428) 
            at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:381)

    在web.xml中新的正确配置如下(使用版本:jetty -> install/jetty-distribution-7.2.0):

    <servlet> 
            <servlet-name>default</servlet-name> 
            <!-- <servlet-class>org.mortbay.jetty.servlet.DefaultServlet</servlet-class> -->
            <servlet-class>org.eclipse.jetty.servlet.DefaultServlet</servlet-class> 
            <init-param> 
                <param-name>useFileMappedBuffer</param-name> 
                <param-value>false</param-value> 
            </init-param> 
            <load-on-startup>0</load-on-startup> 
        </servlet>

    2、jetty plugin在7.0之后从mortbay组织移交给了eclipse组织,在公司内部使用groupId和ArtifactId也发生了变化。参考地址:http://host...../mvn/external/org/mortbay/jetty/jetty-maven-plugin/

    3、jetty在eclipse中默认端口设置

    默认是8080, 可修改。在Arguments-> VM Arguments中修改:

    -Djetty.home="D:workspaceshummock.console.new.metadata.pluginsorg.eclipse.wst.server.core mp0" -DSTART="D:workspaceshummock.console.new.metadata.pluginsorg.eclipse.wst.server.core mp0/start.config" -Dinstall.jetty.home="D:softwarecompanyjetty-distributionjetty-distribution-7.2.2.v20101205" -DVERBOSE -Djetty.port=80 -DSTOP.PORT=8082 -DSTOP.KEY=secret

    4、eclipse的jetty配置

    步骤1:windows->Preferences->Server->runtime environment->add -jetty -jetty v7.2

    步骤2:点击具体的项目,右键->jetty->server中选择在步骤1中配置的jetty容器

    步骤3:参数配置, 在步骤2的server右边有Arguments,可以对JVM参数和程序参数进行配置

    转载:http://tianya23.blog.51cto.com/1081650/799082

    自己之前的配置文件:

    <plugin>
                    <groupId>org.mortbay.jetty</groupId>
                    <artifactId>jetty-maven-plugin</artifactId>
                    <version>7.3.0.v20110203</version>
                    <configuration>
                        <webAppConfig>
                            <contextPath>/report</contextPath>
                            <defaultsDescriptor>src/main/resources/webdefault.xml</defaultsDescriptor>
                        </webAppConfig>
                        <!-- 指定额外需要监控变化的文件或文件夹,主要用于热部署中的识别文件更新  
                        <scanTargetPatterns>
                            <scanTargetPattern>
                                <directory>src</directory>
                                <includes>
                                    <include>**/*.java</include>
                                    <include>**/*.properties</include>
                                </includes>
                                <!-- <excludes> <exclude>**/*.xml</exclude> <exclude>**/myspecial.properties</exclude>
                                    </excludes>
                            </scanTargetPattern>
                        </scanTargetPatterns>
                        <scanIntervalSeconds>10</scanIntervalSeconds><!-- 指定监控的扫描时间间隔,0为关闭jetty自身的热部署,主要是为了使用jrebel
                        <webAppSourceDirectory>${basedir}/src/main/webapp</webAppSourceDirectory><!-- 指定web页面的文件夹
                        <scanIntervalSeconds>0</scanIntervalSeconds>
                        <webDefaultXml>src/main/resources/webdefault.xml</webDefaultXml>
                        <webAppSourceDirectory>src/main/webapp</webAppSourceDirectory>
                        <defaultsDescriptor>src/main/resources/webdefault.xml</defaultsDescriptor>
                    </configuration>
                </plugin>
  • 相关阅读:
    nightwatchjs --Expect element to not include text
    Iterating elements using NightWatchJS
    nightwatch 切换窗口
    nodejs读取配置文件
    spring 事务
    重载,重写,重构
    python 元组不变 列表可变
    WebStorm ES6 语法支持设置
    docker日志
    curl -O 下载文件
  • 原文地址:https://www.cnblogs.com/ae6623/p/4416460.html
Copyright © 2011-2022 走看看