2017-02-24 8 views
0

私は、spacheのspaにscalaを持つdroolsを使用しています。 KIEがコンパイルされたルールのために自分のネクサスリポジトリを見ることを知るために、私はシステムプロパティを "kie.maven.settings.custom"を作業ディレクトリに含まれている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がシステムプロパティを取得するための競合条件を作成しますか?私はこれを理解することができました、そして、それはスパークの問題、およびDroolsのとは何の関係もあることが判明し

<?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> 

答えて

0

マイカスタムsettings.xmlファイルは次のようになります。

これを解決するために、カスタムsettings.xmlをSparkジョブクラスパスに追加し、追加のSparkプロパティを設定する必要がありました。リウィウスの設定ファイルでは、これは次のようになります。

"conf":{ 
     "spark.driver.extraJavaOptions": "-Dkie.maven.settings.custom=settings.xml", 
     "spark.executor.extraJavaOptions": "-Dkie.maven.settings.custom=settings.xml" 
    } 

だけ設定エグゼ追加オプションは、十分なされている必要がありますが、私はそれをテストしていませんが、私は、両方のドライバとエグゼキュータ追加オプションのためにこれを設定します。

関連する問題