maven filter转换时容易忽略的错误

By | 11月08日
Advertisement

使用Maven管理,定义了Filter,配置文件中的动态值都由Filter管理。

Apache Maven 3.0

maven-compiler-plugin 2.3.1

maven-resources-plugin 2.4.3

maven-jetty-plugin 6.1.25

发现一个疑似bug:

在配置文件中有

<email>[email protected]</email>

此时使用mvn compile、package都可以得到正确结果,但Eclipse插件、jetty引发的编译会出现Filter转换错误的情况,包含email地址的文件不能正确转义。

原因是maven-resources-plugin的默认delimiter包括 ${*}和@,邮件地址恰好包含了关键字,造成转换问题(质疑使用@的原因),在pom.xml中修改默认delimiter定义

           <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.4.3</version>
                <configuration>
                    <delimiters>
                      <delimiter>${*}</delimiter>
                    </delimiters>
                    <useDefaultDelimiters>false</useDefaultDelimiters>
                </configuration>
            </plugin>

去掉@分割后一切正常

Similar Posts:

  • 【Maven实用技巧】03. Maven 编译打包时如何忽略测试用例

    跳过测试阶段: mvn package -DskipTests 临时性跳过测试代码的编译: mvn package -Dmaven.test.skip=true maven.test.skip同时控制maven-compiler-plugin和maven-surefire-plugin两个插件的行为,即跳过编译,又跳过测试. 指定测试类 mvn test -Dtest=RandomGeneratorTest 以Random开头,Test结尾的测试类 mvn test -Dtest=Random*

  • 从字符串向 datetime 转换时失败

    错误症状: 从字符串向 datetime 转换时失败. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.Data.SqlClient.SqlException: 从字符串向 datetime 转换时失败. 源错误: 行 56: con.Open();行 57: SqlCommand com = new SqlCommand(sql, con);行 58: com.ExecuteNonQu

  • UG4.0做导出2D转换时提示未找到转换器图像,环境变量UGTO2D_DIR可能设置错误,导出之后空文件,请教高手,谢谢 - 搜搜

    UG4.0做导出2D转换时提示未找到转换器图像,环境变量UGTO2D_DIR可能设置错误,导出之后空文件,请教高手,谢谢 提问补充:有没有知道的? 满意答案: 卸载转换程序,重新安装转换程序 追问:那个安装文件,谢谢 补充:Install Translators 相关问题: ug4.0转2D图档时出现"未找到转换器图像环境变量可能设置错误"的提示,怎么办?O(∩_∩)O谢谢咯! ug背景图怎么改?加UGII-BACKGROUND-PICTVRE变量什么都没了??? 为什么我的UG改了许

  • 字符编码问题以及iconv函数转换时莫名少数据问题

    a. 如果欲使用gb2312编码,那么php要输出头:header("Content-Type: text/html; charset=gb2312"),静态页面添加<meta http-equiv="Content-Type" content="text/html; charset=gb2312">,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件. b. 如果欲使用utf-8编码,那么php要输出

  • ViewSwitcher:在两个视图间转换时显示动画

    ViewSwitcher 的作用简单来说就是:在两个视图间转换时显示动画 它的两个子类应该很熟悉,ImageSwitcher:转换图片时增加动画效果;TextSwitcher:转换文字时增加动画效果;其实例见apidemos中ImageSwitcher实例和TextSwitcher实例 但不要忽略ViewSwicher,在一些场合还是很有用的 在android里视图切换是一个很常见的需求,比如说加载view和后台背景,当后台加载数据时,loding view显示,数据View隐藏,加载完成,反向

  • MySQL时的一些常见错误

    MySQL server has gone away错误 本小节也涉及有关Lost connection to server during query的错误. 对MySQL server has gone away错误最常见的原因是服务器超时了并且关闭了连接.缺省地,如果没有事情发生,服务器在 8个小时后关闭连接.你可在启动mysqld时通过设置wait_timeout变量改变时间限制. 你可以通过执行mysqladmin version并且检验正常运行的时间来检查MySQL还没死掉. 如果你有

  • 输入中文保存时就会提示错误

    如果输入中文保存时就会提示错误: Save could not be completed. Reason: some characters cannot be mapped using "ISO-8859-1" character encoding. Either change the encoding or remove the characters which are not supported by the "ISO-8859-1" character enc

  • MSSQL sum()计算expression转化为数据类型int时发生算术溢出错误解决

    SQL Server sum()函数计算某一列的值的合时 select sum(pdfsize)/1024/1024 as totalsize,count(*) as cnt,sum(pdfsize)/1024/1024/count(*) as avgsize 由于表行数过大(接近5千万行),查询一段时间后报出 expression转化为数据类型int时发生算术溢出错误 错误 应该是超过int数据不够存了 逐将数据类型转换为numeric类型 select sum(convert(numeric

  • 在从服务器接收结果时发生传输级错误

    "在从服务器接收结果时发生传输级错误. (provider: TCP Provider, error: 0 - 指定的网络名不再可用.)" 传输级错误,就是Tds类错误,也就是表格数据流协议,是建立在TCP/IP Net-Library之上的,包含在TCP数据段内.TDS用1433端口进行数据库通信. TDS客户端使用称为表格格式数据流 (TDS) 的 SQL Server 专用应用程序级协议来发送 SQL 语句. 大致的过程: 数据包由用于 SQL Server 的 Microsof

  • 在电脑上上安装了Oracle 11g R2,在用Navicat去连接Oracle时,提示以下错误:

    在电脑上上安装了Oracle 11g R2,在用Navicat去连接Oracle时,提示以下错误: Cannot load OCI DLL, 126: Instant Client package is required for Baic and TNS connection , For more information: http://wiki.navicat.com/wiki/index.php/Instant_client_required 查看上述链接页面提示,Navicat only

Tags: