小编Den*_* II的帖子

在jsvc类路径中使用多个jar

我正在尝试使用jsvc将Java应用程序作为Linux服务运行.我找到了如何用jsvc将java程序转换为守护进程?它能够让我大部分时间,但我仍然在努力让类路径得到解决.

我向stderr收到以下错误:

19/04/2013 10:43:18 12233 jsvc.exec错误:找不到守护进程加载器org/apache/commons/daemon/support/DaemonLoader

19/04/2013 10:43:18 12231 jsvc.exec错误:服务退出,返回值为1

似乎运行时无法找到commons-daemon.jar.

我的应用程序是结构化的,以便应用程序本身在一个jar文件中,具有依赖项,包括lib目录中的commons-daemon.

  • daemon-script.sh
  • myapp.jar
  • LIB /公地daemon.jar
  • LIB /另一罐

这是我的daemon-script.sh的相关部分:

LIB_DIR = $(PWD)/ lib目录/*

CLASS_PATH = $(PWD)/myapp.jar

$ EXEC -home $ JAVA_EXEC -cp $ CLASS_PATH:$ LIB_DIR -outfile $ LOG_OUT -errfile $ LOG_ERR -pidfile $ PID $ 1 $ CLASS

我尝试了很多变化:相对路径,特别是引用lib/commons-daemon.jar,没有通配符等.有没有人知道如何正常工作?

此外,myapp.jar是一个自执行jar (主要用于测试目的,是的,我仍然需要它作为服务运行),因此manifest.mf包含Class-Path和Main-Class属性.有没有办法让jsvc识别清单?

java daemon jsvc apache-commons-daemon

5
推荐指数
1
解决办法
2192
查看次数

当最外层元素具有 xmlns 属性时,如何在camel中使用xpath?

我在使用 xpath 使用 apache-camel 提取下面的“有效负载”值时遇到一些问题。我在两个示例 xml 的路由中使用以下 xpath,第一个示例 xml 按预期返回 SomeElement 和 SomeOtherElement,但第二个 xml 似乎根本无法解析 xml。

xpath("//Payload/*")
Run Code Online (Sandbox Code Playgroud)

这个示例 xml 解析得很好。

<Message>
  <Payload>
    <SomeElement />
    <SomeOtherElement />
  </Payload>
</Message>
Run Code Online (Sandbox Code Playgroud)

此示例 xml 不进行解析。

<Message xmlns="http://www.fake.com/Message/1">
  <Payload>
    <SomeElement />
    <SomeOtherElement />
  </Payload>
</Message>
Run Code Online (Sandbox Code Playgroud)

我发现了一个关于 xml 和 xpath 的类似问题,但它涉及 C# 并且不是骆驼解决方案。

知道如何使用 apache-camel 解决这个问题吗?

java xml xpath apache-camel

2
推荐指数
1
解决办法
3001
查看次数

标签 统计

java ×2

apache-camel ×1

apache-commons-daemon ×1

daemon ×1

jsvc ×1

xml ×1

xpath ×1