我想在本地运行风暴起动器项目。我下面的说明从 -执行风暴起动器时出错
https://github.com/apache/storm/tree/master/examples/storm-starter
但是当我尝试执行风暴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:///”?
您尝试运行风暴启动的哪种拓扑结构?你真的需要指定前缀'file://'(btw:它应该只有两个斜线,而不是三个)。此外,我想知道(但我不是窗口用户)为什么你使用斜杠而不是反斜杠? –
我的解决方案对您有帮助吗? –