首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过添加依赖项来运行Maven项目

通过添加依赖项来运行Maven项目
EN

Stack Overflow用户
提问于 2019-11-17 15:06:33
回答 1查看 43关注 0票数 1

我正在尝试从Emory NLP运行这个DDR (深度依赖表示)转换工具:https://github.com/elitcloud/elit-java/tree/master/elit-ddr

我已经在一个名为DepConverter的新目录中创建了一个新的Maven项目,并将网站中指定的依赖项添加到depConverter的pom.xml文件中。这个pom.xml文件是通过自动创建一个新的、默认的Maven项目构建的。我想我在这个pom.xml文件中遗漏了一些东西来正确运行DDR工具,因为当我在depConverter中运行指定的命令行命令java cloud.elit.ddr.bin.DDRConvert -i relcl.parse -oe tsv时,我得到了以下错误:

代码语言:javascript
复制
Error: Could not find or load main class cloud.elit.ddr.bin.DDRConvert

我不完全清楚Maven将如何加载这个类。我必须创建一个java文件才能运行这个工具吗?

EN

回答 1

Stack Overflow用户

发布于 2019-11-17 19:59:16

假设问题是关于从命令行运行:

当您尝试从命令行运行时,DDR库不在类路径中。这就是为什么JVM不能加载期望在这个库中找到的主类。

所以你可以试着运行:

代码语言:javascript
复制
java -classpath <PATH_TO_DDR_JAR> cloud.elit.ddr.bin.DDRConvert -i relcl.parse -oe tsv

这是最简单的方法。jar应该可以在本地的maven存储库中找到(默认情况下是~/.m2/ repository )。

简而言之,Maven是一个构建工具,它不会在您的工件/依赖项中运行任何东西,就像您的例子一样。

或者,如果您想“使用”pom中提供的信息(如依赖图),您仍然可以运行mvn exec:exec / mvn exec:java插件并提供相关参数来运行您选择的类。

你可以找到更多关于exec插件here的信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58898295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档