JBPM 7.73 Docker 映像,自定义任务失败,找不到上传的 jar 的依赖项工件

问题描述 投票:0回答:1

我正在尝试让自定义任务在默认的 docker 映像中工作。基本上我用的是这个

https://github.com/hbelmiro/jbpm-work-item-handler-demo

项目将版本调整为7.73.final。然后我运行 maven install 并通过 UI 中的“设置”->“添加自定义任务”上传自定义任务,并将其设置为“打开”

此后,我在我的空间中的“设置”->“自定义任务”下安装了自定义任务,并使用“从存储库添加”在“依赖项”下添加了依赖项。当我现在想使用“部署”按钮进行部署时,出现异常错误 [org.kie.scanner.MavenClassLoaderResolver] (默认任务 30) 未找到依赖项工件:de.piu.datenhaus:addressvalidation:1.1

这是我上传的 JAR 文件,也是我实际的自定义任务(工作项处理程序)

我该如何解决这个问题?我在文档或谷歌搜索中没有发现任何与此相关的内容。

这就是自定义任务资产首选项的样子:

[
        [
            "name" : "DatenhausAddressSignature",
            "displayName" : "DatenhausAddressSignature",
            "category" : "addressvalidation",
            "description" : "",
            "defaultHandler" : "mvel: new de.piu.datenhaus.addressvalidation.DatenhausAddressSignatureWorkItemHandler()",
            "documentation" : "addressvalidation/index.html",

            "parameters" : [
                                "DatenhausAddress" : new StringDataType()

            ],
            "results" : [
                                "DatenhausAddressSignature" : new StringDataType()

            ],
            "mavenDependencies" : [
                                 "de.piu.datenhaus:addressvalidation:1.1"

            ],
            "icon" : "DatenhausAddressSignatureWorkItemHandler.png"

        ]

]

完整的堆栈跟踪是

12:19:59,170 INFO  [io.jaegertracing.internal.reporters.RemoteReporter] (jaeger.RemoteReporter-QueueProcessor) FlushCommand is working again!
12:20:07,654 INFO  [stdout] (default task-30) [WARNING] The POM for de.piu.datenhaus:addressvalidation:jar:1.1 is missing, no dependency information available
12:20:08,471 WARN  [org.appformer.maven.integration.MavenRepository] (default task-30) Unable to resolve artifact: de.piu.datenhaus:addressvalidation:1.1
12:20:08,765 WARN  [org.appformer.maven.integration.MavenRepository] (default task-30) Unable to resolve artifact: de.piu.datenhaus:addressvalidation:pom:1.1
12:20:08,972 WARN  [org.appformer.maven.integration.MavenRepository] (default task-30) Unable to resolve artifact: de.piu.datenhaus:addressvalidation:1.1
12:20:08,972 ERROR [org.kie.scanner.MavenClassLoaderResolver] (default task-30) Dependency artifact not found for: de.piu.datenhaus:addressvalidation:1.1
12:20:09,356 WARN  [io.jaegertracing.internal.reporters.RemoteReporter] (jaeger.RemoteReporter-QueueProcessor) FlushCommand execution failed! Repeated errors of this command will not be logged.: io.jaegertracing.internal.exceptions.SenderException: Failed to flush spans.
        at [email protected]//io.jaegertracing.thrift.internal.senders.ThriftSender.flush(ThriftSender.java:115)
        at [email protected]//io.jaegertracing.internal.reporters.RemoteReporter$FlushCommand.execute(RemoteReporter.java:160)
        at [email protected]//io.jaegertracing.internal.reporters.RemoteReporter$QueueProcessor.run(RemoteReporter.java:182)
        at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: io.jaegertracing.internal.exceptions.SenderException: Could not send 1 spans
        at [email protected]//io.jaegertracing.thrift.internal.senders.UdpSender.send(UdpSender.java:85)
        at [email protected]//io.jaegertracing.thrift.internal.senders.ThriftSender.flush(ThriftSender.java:113)
        ... 3 more
Caused by: org.apache.thrift.transport.TTransportException: Cannot flush closed transport
        at [email protected]//io.jaegertracing.thrift.internal.reporters.protocols.ThriftUdpTransport.flush(ThriftUdpTransport.java:148)
        at [email protected]//org.apache.thrift.TServiceClient.sendBase(TServiceClient.java:73)
        at [email protected]//org.apache.thrift.TServiceClient.sendBaseOneway(TServiceClient.java:66)
        at [email protected]//io.jaegertracing.agent.thrift.Agent$Client.send_emitBatch(Agent.java:70)
        at [email protected]//io.jaegertracing.agent.thrift.Agent$Client.emitBatch(Agent.java:63)
        at [email protected]//io.jaegertracing.thrift.internal.senders.UdpSender.send(UdpSender.java:83)
        ... 4 more
Caused by: java.net.PortUnreachableException: ICMP Port Unreachable
        at java.base/java.net.PlainDatagramSocketImpl.send(Native Method)
        at java.base/java.net.DatagramSocket.send(DatagramSocket.java:695)
        at [email protected]//io.jaegertracing.thrift.internal.reporters.protocols.ThriftUdpTransport.flush(ThriftUdpTransport.java:146)
        ... 9 more 12:20:10,359 INFO  [io.jaegertracing.internal.reporters.RemoteReporter] (jaeger.RemoteReporter-QueueProcessor) FlushCommand is working again!

jbpm kie drools-kie-server kie-server
1个回答
0
投票

可以通过将 -SNAPSHOT 添加到 pom.xml 中的版本标记来解决此问题。我什至在使用安装程序安装的全新安装上尝试过此操作,当我不将 -SNAPSHOT 附加到版本时,出现了相同的错误。

这很奇怪,我不知道如何或在哪里进一步追踪这个问题。也许其他人有额外的解释

进一步发现只有当项目使用java 1.8版本构建时才会发生

© www.soinside.com 2019 - 2024. All rights reserved.