我在apache spark中使用了scala中的drools。爲了讓KIE知道查看我的私有連接庫以獲得編譯的規則,我試圖將系統屬性「kie.maven.settings.custom」設置爲包含在工作目錄中的自定義settings.xml文件的jar文件。設置KieContainer kie.maven.settings.custom
我試圖在運行時設置這個系統屬性,但我有混合的結果。這裏是我的代碼來設置「kie.maven.settings.custom」
val userDir = System.getProperty("user.dir")
val customPath = Paths.get(userDir, "settings.xml")
System.setProperty("kie.maven.settings.custom", customPath.toString)
我的本地機器上運行,但是,它不工作在集羣中時,這似乎正常工作。
我的問題是:我應該期望這樣工作,因爲我期待?或者這是否爲KIE獲取系統屬性創造了競爭條件?
我自定義的settings.xml文件看起來像:
<?xml version="1.0" encoding="UTF-8"?>
<profilesXml xmlns="http://maven.apache.org/PROFILES/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/PROFILES/1.0.0 http://maven.apache.org/xsd/profiles-1.0.0.xsd">
<profiles>
<profile>
<id>profile-1</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>temp-nexus</id>
<url>http://nexus.path..com:8081/repository/maven-releases</url>
<releases>
<updatePolicy>always</updatePolicy>
</releases>
</repository>
</repositories>
</profile>
</profiles>
</profilesXml>