Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 412|回复: 0

STS MAVEN对项目进行打包是的一些warning,error的解决方案

[复制链接]
  • TA的每日心情
    奋斗
    3 天前
  • 签到天数: 789 天

    [LV.10]以坛为家III

    2049

    主题

    2107

    帖子

    72万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    722638
    发表于 2021-6-24 14:48:57 | 显示全部楼层 |阅读模式

    1.

    [WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!

    提示,这说明你没有指定编码,只能按照平台的默认编码进行拷贝。如果原来编码使用的是UTF-8进行保存,而这里拷贝用GBK肯定会出现乱码的。所以要改成自己的编码保存的方式。

    解决方法,在POM.XML文件中添加:

    1 <properties>
    2         <project.build.sourceEncoding>
    3             UTF-8
    4         </project.build.sourceEncoding>
    5     </properties>

     

    添加后:

    Using 'UTF-8' encoding to copy filtered resources.

    会出现如上的提示。

     

    2.

    [WARNING] Warning: selected war files include a WEB-INF/web.xml which will be ignored

     

    解决方法:在POM.XML文件中加入:

    1 <plugin>
    2 <groupId>org.apache.maven.plugins</groupId>
    3 <artifactId>maven-war-plugin</artifactId>
    4 <version>2.1.1</version>
    5 <configuration>
    6 <!-- http://maven.apache.org/plugins/maven-war-plugin/ -->
    7 <packagingExcludes>WEB-INF/web.xml</packagingExcludes>
    8 </configuration>
    9 </plugin>

     

     3.

    Failed to load class "org.slf4j.impl.StaticLoggerBinder"

    Hibernate使用SLF4J API记录日志,所以在Hibernate的lib中,不再提供Log4J的包,而大部分框架依然使用Log4J记录日志,这样导致了兼容性问题。

         解决办法,两步:
            一、在编译路径中添加Log4J的包,比如我一直在用的log4j-1.2.8.jar;
            二、再添加一个叫做slf4j-log4j12-1.5.11.jar的包进行转换,注意到这里的log4j12,可能对应的是log4j 1.2版本。

    SLF4J官方下载:http://www.slf4j.org/download.html
    下载后解压可找到slf4j-log4j12-XX.jar

     

    4.

        The import org.springframework.jdbc cannot be resolved


    出现此问题是在使用JdbcTemplate的时候。与Jdbc相关的JAR包没有引入的原因。可以到MAVEN的中央仓库中去搜索spring jdbc然后找到相应的依赖。添加到MAVEN工程的pom.xml文件中。依赖关系如下:

     

    1         <dependency>
    2             <groupId>org.springframework</groupId>
    3             <artifactId>spring-jdbc</artifactId>
    4             <version>3.1.2.RELEASE</version>
    5         </dependency>

     

     

    5.

        缺少servlet-api.jar。会提示The type javax.http.HttpServletRequest cannot be resolved。可以到MAVEN的中央仓库中搜索servlet-api然后找到相应的依赖关系。添加到MAVEN工程的pom.xml文件中。找到的依赖关系如下:

     

    1         <dependency>
    2             <groupId>org.apache.tomcat</groupId>
    3             <artifactId>servlet-api</artifactId>
    4             <version>6.0.35</version>
    5         </dependency>

     

     

    6.

       如果在XML文件中出现start state definition is missing的错误提示。则解决方法是:将该工程重建。然后重新新建该XML文件。

     

    7.

    在使用Spring MVC 与 FreeMarker 结合使用时如果出现could not resolve view with name in servlet with name的错误。则是{Dispatcher名}-servlet.xml文件中的视图解析器配置的问题。

    如果是按如下配置的,则不会出现上述问题。


    <bean id="viewResolver"
            class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">

            <property name="viewClass"
                value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"></property>

            <property name="suffix" value=".ftl"></property>

        </bean>



        <bean id="freemarkerConfig"
            class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
            <property name="templateLoaderPath" value="/WEB-INF/flt/"></property>
            <property name="freemarkerSettings">
                <props>
                    <prop key="template_update_delay">0</prop>
                    <prop key="default_encoding">utf-8</prop>
                    <prop key="locale">zh_CN</prop>
                    <prop key="number_format">0.##########</prop>

                </props>



            </property>





        </bean>

     

    但是如果在第一个bean中配置了<property name="prefix" value="/" /> 则会出现上述问题。

          如果在第一个bean中的 <property name="suffix" value=".ftl"></property>配置中,如果value的值不是.ftl则也会出现上述问题。

     

    原因是:freemarker本身配置了templateLoaderPath而在viewResolver中不需要配置prefix,且路径前缀必须配置在templateLoaderPath中。

     

     

    8.

      出现not found org.springframework.web.servlet.view.InternalResourceViewResolver的错误提示。是因为缺少spring webmvc包所致,可以再MAVEN的中央仓库中搜索相应包的依赖关系。依赖关系如下:

     

    1         <dependency>
    2             <groupId>org.springframework</groupId>
    3             <artifactId>spring-webmvc</artifactId>
    4             <version>3.1.2.RELEASE</version>
    5         </dependency>

     

     

     

    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-9-9 12:59 , Processed in 0.137023 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表