- maven
- 引入依赖
-
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.5.RELEASE</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>compile</scope> </dependency>
- resource文件夹下的配置文件没有被spring加载
- 因为spring默认加载路径时项目的webapp目录下,而resource文件夹没有被打包在webapp目录下
- 需要在pom文件下指定resource的记录
-
<build> <finalName>nmh</finalName> <defaultGoal>package</defaultGoal> <outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory> <resources> <resource> <!-- targetPath指定outputDirectory指定目录下的目录,即src/main/webapp/WEB-INF/classes/src/main/plexus --> <!--<targetPath>src/main/plexus</targetPath>--> <directory>src/main/java</directory> </resource> <resource> <directory>src/main/resource</directory> <filtering>true</filtering> </resource> </resources> </build>
- 配置jetty启动
-
<!-- jetty启动插件 --> <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>9.4.8.v20171121</version> <configuration> <!-- 配置表示新代码的扫描时间间隔(秒),值 <= 0 表示不扫描。这里利用的是jetty 的定时重载代码的特性, 做修改后不用重新启动项目,自动扫描出改动后会自动更新class文件的 --> <scanIntervalSeconds>5</scanIntervalSeconds> <httpConnector> <port>80</port><!-- 端口号,非必填 --> </httpConnector> <webApp> <!-- 配置表示工程的虚拟目录名,如果配置为/,则届时访问路径为hostname:port/, 如果配置为/jetty,则届时访问路径为hostname:port/jetty --> <contextPath>/aa</contextPath> </webApp> </configuration> </plugin>
-
- servlet
- servlet指定spring配置文件
-
<init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:servlet-context.xml</param-value> </init-param>
- servlet默认是懒加载的,即第一次访问才加载
- 如果需要启动时就加载,进行如下配置即可
-
<load-on-startup>1</load-on-startup>
搭建maven+jetty+springmvc环境时遇到的问题
最新推荐文章于 2021-02-27 21:01:56 发布