假设我们有一个Java 应用程序,而不是一个可以通过Maven central获得的库。例如,一个这样的项目是jol,它有相应的CLI接口in Maven central。
据我所知,与库的主要区别在于相应的JAR文件包含一个具有适当main()
方法的类,并且可选地,在JAR清单中包含相关的Main-Class:
标头。如果将此类工件用作项目的依赖项,Maven将很乐意将JAR文件及其依赖项下载到本地存储库,就像对任何其他工件一样。
是否可以使用Maven直接执行此类应用程序,而无需设置Maven项目?
exec:java
plugin通过设置JVM类路径以便依赖性可用,可以很好地为本地项目工作。用户不必担心JAR或.class
文件位置等。不幸的是,从我所知道的,它还需要一个封闭的Maven项目,所以它不能在任意命令行提示符下使用。
答案 0 :(得分:3)
因此,如果没有pom.xml文件,则无法运行maven构建。 如果您有一个pom.xml,那么根据定义,您已经'设置了一个Maven项目'。
正如@DaveNewton所说,你应该能够设置一个非常小的pom.xml,它具有相关jar文件的依赖关系,以及exec-maven插件。我担心它不会比那更简单。
答案 1 :(得分:2)
与Maven 3配合使用的hacky解决方案是将Maven依赖插件与Maven帮助插件结合使用来解析本地存储库路径:
three.js mesh