1

drools ワークベンチ 6.5.0.Final をアプリケーションに統合したいと考えています。コードは次のとおりです。

 private static void test() throws InterruptedException {
        KieServices kServices = KieServices.Factory.get();
        ReleaseId releaseId = kServices.newReleaseId("com.risk", "core-engine-test", "1.0.0-SNAPSHOT");
        kContainer = kServices.newKieContainer(releaseId);

        KieScanner kScanner = kServices.newKieScanner(kContainer);
        kScanner.start(10000L);

        Person p = new Person("郭芙蓉", 8);
        System.out.println("orig p1 : " + p);
        while (true) {
           Thread.sleep(5000);
           KieSession ksession = kContainer.newKieSession("testSession");
                ksession.insert(p);
                ksession.fireAllRules();
                System.out.println("after p1 : " + p);
                ksession.dispose();
            }
  }

以下は、独自のアプリケーションで使用される私の settings.xml です。

  <mirrors>
        <mirror>
            <id>nexus</id>
            <url>http://10.240.132.81:8081/nexus/content/groups/public/</url>
            <name>nexus</name>
            <mirrorOf>central</mirrorOf>
        </mirror>
    </mirrors>

kjar をインストールして nexus リポジトリにデプロイしました。初めてアプリを起動したときに、「resolver-status.properties」という名前の追跡ファイルが書き込まれ、このファイルに timstamp が記録されるため、ローカル サーバーは取得しません。 nexus-server.I でより新しい新しい jar がこれ以上ログに記録されました。

05-10 15:59:48.657 Not in OSGi: using plexus based maven parser
05-10 15:59:50.168 Using manager EnhancedLocalRepositoryManager with priority 10.0 for /home/username/.m2/repository
05-10 15:59:50.175 Using manager EnhancedLocalRepositoryManager with priority 10.0 for /home/username/.m2/repository
05-10 15:59:50.231 Using mirror nexus (http://10.240.132.81:8081/nexus/content/groups/public/) for central (https://repo.maven.apache.org/maven2).
05-10 15:59:50.262 Using manager EnhancedLocalRepositoryManager with priority 10.0 for /home/username/.m2/repository
05-10 15:59:50.277 KieModule Lookup. ReleaseId com.risk:core-engine-test:1.0.0-SNAPSHOT was not in cache, checking classpath
05-10 15:59:50.277 KieModule Lookup. ReleaseId com.risk:core-engine-test:1.0.0-SNAPSHOT was not in cache, checking maven repository
05-10 15:59:50.288 Skipped remote request for com.risk:core-engine-test:1.0.0-SNAPSHOT/maven-metadata.xml, locally cached metadata up-to-date.
05-10 15:59:50.588 Skipped remote request for com.risk:core-engine-test:1.0.0-SNAPSHOT/maven-metadata.xml, locally cached metadata up-to-date.
05-10 15:59:50.588 Skipped remote request for com.risk:core-engine-test:1.0.0-SNAPSHOT/maven-metadata.xml, locally cached metadata up-to-date.
05-10 15:59:50.589 Skipped remote request for com.risk:core-engine-test:1.0.0-SNAPSHOT/maven-metadata.xml, locally cached metadata up-to-date.
05-10 15:59:50.608 Dependency collection stats: {ConflictMarker.analyzeTime=1, ConflictMarker.markTime=1, ConflictMarker.nodeCount=1, ConflictIdSorter.graphTime=0, ConflictIdSorter.topsortTime=1, ConflictIdSorter.conflictIdCount=1, ConflictIdSorter.conflictIdCycleCount=0, ConflictResolver.totalTime=3, ConflictResolver.conflictItemCount=1, DefaultDependencyCollector.collectTime=18, DefaultDependencyCollector.transformTime=10}

誰でもそれを理解するのを手伝ってもらえますか? ありがとうございました!

4

1 に答える 1

0

現時点では、固定バージョンを常に使用する場合、LATEST はかなりうまく機能します。逆に SNAPSHOT で使おうとするとさすがに壊れてしまい、動かせません。メール チェーン [1] によると、答えは「LATEST は設計上壊れている」というだけです。[1] ただし、Maven のドキュメントには、「再現可能なビルドのために、Maven 3.x はこれらのメタバージョンの使用をサポートしなくなりました」とも記載されています。[2]

[1] https://dev.eclipse.org/mhonarc/lists/aether-users/msg00529.html [2] https://cwiki.apache.org/confluence/display/MAVEN/Maven+3.x+Compatibility +Notes#Maven3.xCompatibilityNotes-PluginMetaversionResolution

于 2017-05-11T04:20:03.230 に答える