编译后如何从命令行运行dcm4che工具?

问题描述:

我想使用dcm2json工具,它是dcm4che3工具包的一部分,但我无法弄清楚如何编译和执行命令行工具。其在dcm4che根目录运行编译后如何从命令行运行dcm4che工具?

$ git clone https://github.com/dcm4che/dcm4che.git 
$ cd dcm4che 
$ mvn install 

如安装手册所述,所有我从编译得到的是一个罐子dcm4che/dcm4che工具/ dcm4che刀具dcm2json /目标/ dcm4che刀具dcm2json-3.3 .5-SNAPSHOT.jar和类文件dcm4che/dcm4che-tool/dcm4che-tool-dcm2json/target/classes/org/dcm4che3/tool/dcm2json/Dcm2Json.class。没有工具可以执行。我可以执行从http://sourceforge.net/projects/dcm4che/files/dcm4che3/3.3.3/下载的独立工具,但很遗憾,dcm2json不包含在此(最新的sourceforge)版本中。

有谁知道从哪里可以下载dcm2json可执行文件或如何编译它?任何帮助真的,真的很感激。

(是的,我做了谷歌。很多。)

dcm4che项目有一个子项目称为dcm4che-assembly是父dcm4che项目运行后mvn install,产生组装所有可运行的文物,包括dcm2json拉链。

如果您对如何让sh/bat脚本运行它感到好奇,那么dcm4che-assembly是您必须查看的地方。

实际上,这个zip组件与您在二进制包中下载的相同。

希望它有帮助!

我也很好奇这件事,所以我调查了一些。我没有最终答案,但我会发布迄今为止发现的内容,希望对其他人有用,并且可能是答案的第一步。

看来,mvn install,它做了它的事情后,把一大堆东西放在~/.m2。那里的jar文件似乎没有像你期望的那样运行,并且基于dcm4che-assembly/src/bin中git仓库中的文件,似乎他们需要一个包装才能正确运行。我与包装初步玩弄似乎并没有工作,我得到的错误如下所示:

Error: Could not find or load main class org.dcm4che3.tool.dcm2json.Dcm2Json 

这些包装似乎文件真的想要在某处安装(?像/usr/local/bin),但他们似乎并没有做是。

在另一方面,more recent binaries are now available(目前最多通过3.3.7,而Git是3.3.8-SNAPSHOT),我能够使用这些可用的工具dcm2json。有趣的是,该可执行文件也是一个包装器,几乎与git中的相同。进一步调查为什么它的工作原理和它的git不会导致回答为什么dcm4dch3工具安装后不会神奇地运行。

当然,关键在于了解maven框架是如何工作的。

+0

有可能dcm2json和相关工具也需要[此答案](http://stackoverflow.com/questions/32438616/unable-to-build-dcm4chee-arc-cdi)中列出的prereqs 。 – 2015-10-23 20:51:46