【发布时间】:2015-12-01 18:41:50
【问题描述】:
我正在尝试在本地运行storm starter 项目。我正在按照 - 的指示进行操作 -
https://github.com/apache/storm/tree/master/examples/storm-starter
但是当我尝试执行storm jar命令时,我得到了
ERROR StatusLogger Invalid URL C:/Users/xyzabc/apache-storm-0.10.0-beta/log4j2/cluster.xml java.net.MalformedURLException: unknown protocol: c
我认为这与 cluster.xml 和 worker.xml 中定义的以下部分有关
<RollingFile name="METRICS"
fileName="${sys:storm.log.dir}/metrics.log"
filePattern="${sys:storm.log.dir}/metrics.log.%i">
所以显然文件名需要像
file:///C:/Users/xyzabc/apache-storm-0.10.0-beta/log4j2/cluster.xml
但是当我尝试通过设置来做到这一点时
<RollingFile name="METRICS"
fileName="file:///${sys:storm.log.dir}/metrics.log"
filePattern="file:///${sys:storm.log.dir}/metrics.log.%i">
我收到此错误
ERROR Unable to create file file:///C:\Users\xyzabc\apache-storm-0.10.0-beta\logs/metrics.log java.io.IOException: The filename, directory name, or volume label syntax is incorrect
如您所见,它以某种方式完全弄乱了文件路径。
有没有办法可以在 xml 属性中正确呈现“file:///”?
【问题讨论】:
-
你尝试运行哪种storm-started拓扑?你真的需要指定前缀
file://(顺便说一句:它应该只有两个斜杠,而不是三个)此外,我想知道(但我不是窗口用户)为什么你使用斜杠而不是反斜杠? -
我的解决方案对您有帮助吗?
标签: xml java-io apache-storm