将编程创建的KIE Drools工件部署到Maven存储库

将编程创建的KIE Drools工件部署到Maven存储库,drools,kie,Drools,Kie,有没有办法将编程创建的Drools 6工件部署到底层maven存储库?我不想以某种方式显式调用mvn deploy,但可以从程序本身执行此操作: public static void main(String[] args) { String ruleString = "rule \"TestRule\"\nthen\nSystem.out.println(\"This is a testrule.\");\nend"; KieServices kieServices = Kie

有没有办法将编程创建的Drools 6工件部署到底层maven存储库?我不想以某种方式显式调用
mvn deploy
,但可以从程序本身执行此操作:

public static void main(String[] args) {
    String ruleString = "rule \"TestRule\"\nthen\nSystem.out.println(\"This is a testrule.\");\nend";

    KieServices kieServices = KieServices.Factory.get();

    KieModuleModel kieModuleModel = kieServices.newKieModuleModel();
    KieBaseModel kieBaseModel = kieModuleModel.newKieBaseModel("testbase1").setDefault(true);
    KieSessionModel kieSessionModel = kieBaseModel.newKieSessionModel("testsession1").setDefault(true).setType(KieSessionModel.KieSessionType.STATELESS);

    KieFileSystem kieFileSystem = kieServices.newKieFileSystem();
    kieFileSystem.generateAndWritePomXML(new ReleaseIdImpl("de.itm.test", "testartifact", "0.0.1-SNAPSHOT"));
    kieFileSystem.write("src/main/resources/testbase1/rule1.drl", ruleString);

    KieBuilder kieBuilder = kieServices.newKieBuilder(kieFileSystem).buildAll();

    // how to now deploy the new artifact so it is available on disc, e.g. in ~/.m2/repository/de/itm/test/test/testartifact/0.0.1-SNAPSHOT/ ?
}

在这里,您可以看到一个单元测试,它满足您的要求:

基本上:

MavenRepository repository = MavenRepository.getMavenRepository();
repository.deployArtifact(releaseId, kJar1, kPom);

在这里,您可以看到一个单元测试,它满足您的要求:

基本上:

MavenRepository repository = MavenRepository.getMavenRepository();
repository.deployArtifact(releaseId, kJar1, kPom);

谢谢,我也找到了。我将尝试在我自己的程序中重新实现Guvnor/KIE-WB的这一部分,尽管我目前正在努力使用ResourceFilePath…这是否会在远程KIE Repository中上载到KIE'maven repo?@Arungerge如果您在maven settings.xml文件中配置远程repo,它会上载到KIE'maven repo。@Edson。你能提供一个例子吗?我看过kie ci测试用例,但没有找到任何可以做到这一点的东西。我在上面的答案中链接的测试在这里使用了一个自定义settings.xml文件:谢谢,我还找到了。我将尝试在我自己的程序中重新实现Guvnor/KIE-WB的这一部分,尽管我目前正在努力使用ResourceFilePath…这是否会在远程KIE Repository中上载到KIE'maven repo?@Arungerge如果您在maven settings.xml文件中配置远程repo,它会上载到KIE'maven repo。@Edson。你能提供一个例子吗?我看过kie ci测试用例,但没有找到任何可以这样做的东西。我在上面的答案中链接的测试在这里使用了一个自定义settings.xml文件: