![](/img/trans.png)
[英]How to configure the application.properties externally in the Jenkins maven job?
[英]Jenkins Maven Job Charset
我正在使用Spring Test来测试我的Spring Application,这基本上是一个REST Web服务,提供JSON和其他一些上传的媒体。
单元测试在所有开发人员的机器上都可以正常工作,其中一些测试在JSON响应中返回的字符串,其中一小部分测试特殊字符。
该应用程序已完全配置为对所有内容都使用UTF-8,但是JSON响应返回的字符集错误,因此测试失败。
我试图在/etc/default/jenkins
配置以下行:
JAVA_ARGS="-Djava.awt.headless=true -Dfile.encoding=UTF8"
但是我仍然得到相同的结果。
当运行特定的测试时,我也有机会看到Charset.defaultCharset()
是什么...它看起来像US-ASCII
...
有人可以告诉我我在做什么错吗?
我发现了问题所在。
在我的Spring Test配置中,我正在读取DML.sql文件以创建初始测试数据,并且初始化数据库的行是这样的:
<jdbc:initialize-database data-source="dataSource">
<jdbc:script location="classpath:sql/DML.sql" />
</jdbc:initialize-database>
这使我的配置依赖于服务器字符集,在我的情况下,我在服务器中设置了奇怪的“ US-ASCII”。
我通过将encoding
属性设置为UTF-8
使其独立:
<jdbc:initialize-database data-source="dataSource">
<jdbc:script location="classpath:sql/DML.sql" encoding="UTF-8" />
</jdbc:initialize-database>
因此,可以针对具有特殊字符的值测试来自H2数据库的值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.