[英]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.