bash 脚本应该如何确定 Maven 项目及其依赖项的类路径?

Bkk*_*rad 5 bash classpath maven

耶,我的论文完成了!现在压力已经消失,我已经玩够了 Skyrim,我正在将我为论文编写的代码从使用 ant 构建的混乱目录转换为一个漂亮的 Maven 项目。

我最初有一个bin包含大约 20 个 bash 脚本的目录,这些脚本运行我论文中使用的各种 java 和 ruby​​ 程序,包括最终的基于 jruby/sinatra 的 Web 服务器。我计划将我的脚本移至src/main/scripts,但我需要弄清楚如何处理类路径。

我之前只是将脚本中的路径硬编码到手动下载的依赖项。但是,既然 Maven 正在下载并存储我需要的所有 jar,那么从我的脚本中引用它们的最佳方法是什么:

  • 我是否应该像以前一样让脚本引用本地存储库中各种 jar 的完整路径?
  • 我应该将本地存储库目录作为我的脚本的配置选项并使用该目录的相对路径吗?
  • 我应该使用Maven 程序集插件构建一个包含所有依赖项的大罐子,并通过脚本相对路径访问它吗../../../target/*-jar-with-dependencies.jar
  • 还有我没有想到的更好的选择吗?

art*_*tol 2

在您的脚本中,使用exec:java插件来运行 Java 类。它将根据定义的依赖关系整理类路径。那你就不用担心了。