有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

我想使用dcm2json工具,它是dcm4che3工具包的一部分,但我不知道如何编译和执行命令行工具。跑过

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

在安装手册中概述的dcm4che目录根中,我从编译中得到的只是一个jar dcm4che/dcm4che-tool/dcm4che-tool-dcm2json/target/dcm4che-tool-dcm2json-3.3.5-SNAPSHOT。jar和一个类文件dcm4che/dcm4che-tool/dcm4che-tool-dcm2json/target/classes/org/dcm4che3/tool/dcm2json/dcm2json。班没有可执行的工具。我可以执行从http://sourceforge.net/projects/dcm4che/files/dcm4che3/3.3.3/下载的独立工具,但遗憾的是,dcm2json没有包含在这个(最新的sourceforge)版本中

有人知道我可以从哪里下载dcm2json可执行文件或如何编译它吗?任何帮助都将非常感谢

(是的,我用谷歌搜索过很多次。)


共 (2) 个答案

  1. # 1 楼答案

    我对此也很好奇,所以我做了一些调查。我没有最终的答案,但我会发布我目前为止的发现,希望它对其他人有用,并且可能是找到答案的第一步

    看起来mvn install在它完成它的任务之后,把一大堆东西放进了~/.m2。其中的jar文件似乎不像您预期的那样运行,并且基于dcm4che-assembly/src/bin中git repo中的文件,它们似乎需要一个包装器才能正常运行。我对包装器的初步玩弄似乎不起作用——我会出现如下错误:

    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框架是如何工作的

  2. # 2 楼答案

    dcm4che项目有一个名为dcm4che-assembly的子项目,它在父dcm4che项目上运行mvn install后,生成一个zip,用于组装所有可运行的工件,包括dcm2json

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

    事实上,此zip程序集与您在二进制软件包中下载的程序集相同

    希望有帮助