我对java和maven都是陌生的,所以这可能非常简单。
如果我在hello world
这里按照maven2的说明进行操作:
http://maven.apache.org/guides/getting-started/maven-in-five-
minutes.html
一切正常。如果我随后更改pom.xml
以从远程存储库引入依赖项,则此依赖项的文件将存储在中~/.m2/repository/new- dependency/
。
使用说明中的语法hello world
来运行应用程序要求将绝对路径添加到我的类路径的依赖项中(通过设置环境变量或通过命令行开关):
java -cp target/my-app-1.0-SNAPSHOT.jar:/.../.m2/.../new-dependency.jar com.mycompany.app.App
这显然很快就会变得笨拙:)
我怀疑这不是运行Java程序的常用方式,我只需要阅读有关.jar文件的更多信息,但是在这样做的同时,我将感谢您提供有关如何正确执行此操作的所有提示。
我不使用IDE,顺便说一句。从命令行vim。
谢谢!
麦克风。
您可以通过将Main-Class属性添加到其清单文件来使jar成为可执行文件。在Maven中,这是由存档程序插件完成的。要添加Main-
Class属性,请将其添加到pom.xml中:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.mycompany.app.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
现在,您可以使用以下命令运行jar:java -jar myjar.jar
或双击它(并非在所有平台上都可用)。
我有一个包含以下文件的Java项目: C:\MyProject\myPackage\MyTests.class C:\MyProject\lib\junit-platform-console-standalone-1.5.2.jar C:\MyProject\lib\other-library.jar MyTests 文件是使用 IDE 编译的,该 IDE 具有 junit-platform-co
问题内容: 我有一个Maven项目,我通常可以从eclipse编译并运行它,但是当我从命令行编译它时,它的依赖项丢失了,并且出现了错误。只有下载依赖项并将它们添加到c:/ Java / jdk / jre / lib / ext后,我才能编译项目 如何从控制台行编译项目及其依赖项,而无需将其手动添加到jdk?编译器可以以某种方式读取Maven依赖项吗? pom.xml 问题答案: 从具有某些mav
我使用以下基本Maven命令生成了一个项目: 该项目是正确创建的,我可以测试自动生成的App类,而没有任何问题的说明: 稍后,我向POM添加了一些依赖项,获得了以下文件: 最后,为了测试起见,我修改了之前由Maven自己生成的App类: 一系列奇怪的事情发生了: > 即使在POM中指定了较新版本的依赖项,但在.m2文件夹中,下载的版本似乎较旧(例如,commons-lang3的版本为2.1和2.5
问题内容: 我想将我的项目打包在一个可执行的JAR中进行分发。 如何使Maven项目将所有依赖JAR打包到我的输出JAR中? 问题答案: 然后用 编译目标应在Assembly:single:single之前添加,否则不包括您自己项目中的代码。 通常,此目标与自动执行的构建阶段相关。这样可以确保在执行mvn install或执行部署/发布时构建JAR 。
我正在写一个Spring引导应用程序,它需要从ibm笔记数据库中获取记录。为此,我必须使用一个jar库,它不能作为maven依赖项使用。因此,我将jar作为lib/com/ibm/note/1.0.0/notes-1.0.0.jar放在项目主页中,并将其作为本地存储库添加到pom文件中,如下所示。 我的应用程序在eclipse IDE中运行时没有任何问题。但是当我通过右键单击eclipse的pom
我想将我的项目打包在一个单独的非可执行库JAR中进行分发。如何使Maven项目将所有依赖项JAR打包到输出JAR中?Maven assembly插件中有一个选项来创建一个具有依赖项的可执行JAR。有一个接收器来获得目标。但是,我需要构建一个没有类的库jar。我怎么才能造出这样的罐子?