为什么我不能将这个 Maven 构建为可执行文件

Why cant I build this maven as an executable

rdf2vec 的 Maven 项目构建了一个可执行文件,没有任何错误,但是 jar 文件抛出 "no main manifest attribute" 错误。

我尝试解决它:

替换以下代码段:

<manifest> <mainClass>fully.qualified.MainClass</mainClass> </manifest>

与 :

<manifest> <addClasspath>true</addClasspath> <mainClass>walks.WalkGenerator</mainClass> </manifest>

从而使 WalkGenerator 成为整个包的默认主 class。 可悲的是,这并不能解决问题。

另一个问题是我找不到 MANIFEST 文件。

你需要使用 maven-jar-plugin 为你的 jar

设置 main class
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-jar-plugin</artifactId>
  <configuration>
    <archive>
      <manifest>                              
        <mainClass>walks.WalkGenerator</mainClass>
      </manifest>
    </archive>
  </configuration>
</plugin>

除了上面提到的更改外,还添加了以下依赖项以获取可执行文件 运行:

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactid>slf4j-api</artifactId>
  <version>1.7.6</version>
</dependency>