相关疑难解决方法(0)

Java无法执行jar文件没有主清单属性

jar cvef Main.jar Main *

added manifest
adding: DrawPane.class(in = 344) (out= 257)(deflated 25%)
adding: DrawPane.java(in = 306) (out= 175)(deflated 42%)
adding: main(in = 9038) (out= 8275)(deflated 8%)
adding: Main.class(in = 868) (out= 544)(deflated 37%)
adding: Main.java(in = 507) (out= 260)(deflated 48%)
adding: Manifest.txt(in = 18) (out= 18)(deflated 0%)
adding: src/(in = 0) (out= 0)(stored 0%)
adding: src/icon.png(in = 1163) (out= 1168)(deflated 0%)
adding: src/Thumbs.db(in = 3584) (out= 1038)(deflated 71%)
Run Code Online (Sandbox Code Playgroud)

创建jar文件,然后:

java -jar Main.jar
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

no main manifest attribute, in …
Run Code Online (Sandbox Code Playgroud)

java

8
推荐指数
1
解决办法
5万
查看次数

SpringBoot没有主清单属性(Maven)

运行我的jar文件时:java -jar target / places-1.0-SNAPSHOT.jar我遇到下一个错误:

no main manifest attribute, in target/places-1.0-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)

我的pom.xml包含spring-boot-maven-plugin:

 <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <mainClass>com.places.Main</mainClass>
            </configuration>
 </plugin>
Run Code Online (Sandbox Code Playgroud)

我也试图创建一个MANIFEST.MF文件并指定该类,但是它没有帮助。

另外,我还尝试了:

<properties>
      <!-- The main class to start by executing "java -jar" -->
      <start-class>com.places.Main</start-class>
</properties>
Run Code Online (Sandbox Code Playgroud)

我的主要:

@SpringBootApplication
 public class Main {
public static void main(String[] args) throws InterruptedException {
    SpringApplication.run(Main.class,args);
  }
  }
Run Code Online (Sandbox Code Playgroud)

你知道我还能尝试什么吗?

java manifest maven spring-boot spring-boot-maven-plugin

7
推荐指数
4
解决办法
5680
查看次数

使用 bitbucket 管道部署到 heroku 的 Spring boot gradle 项目在 build/libs/app-SNAPSHOT-plain.jar 中给出错误 no main manifest attribute

我有一个使用 IntelliJIDEA 和 gradle.build 构建的 Spring boot gradle 项目:

plugins {
    id 'org.springframework.boot' version '2.5.5'
    id 'io.spring.dependency-management' version '1.0.11.RELEASE'
    id 'java'
}

group = 'pk.inlab.app.web'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-mail'
    implementation 'org.springframework.boot:spring-boot-starter-security'
    implementation 'org.springframework.boot:spring-boot-starter-validation'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-hateoas'
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'

    // Apache commons
    implementation 'commons-beanutils:commons-beanutils:1.9.4'
  
    // Jwt
    implementation 'io.jsonwebtoken:jjwt:0.9.1'

    // OpenAPI and Swagger
    implementation 'org.springdoc:springdoc-openapi-ui:1.5.11'
    implementation 'org.springdoc:springdoc-openapi-data-rest:1.5.11'

    // Passy
    implementation 'org.passay:passay:1.6.1' …
Run Code Online (Sandbox Code Playgroud)

java heroku gradle spring-boot

6
推荐指数
1
解决办法
1817
查看次数

在jar中没有主要的清单属性

我正在尝试运行由maven shade插件创建的jar.我按以下方式配置主类:

<project>
...
<build>
<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>2.3</version>
    <executions>
      <execution>
        <phase>package</phase>
        <goals>
          <goal>shade</goal>
        </goals>
        <configuration>
          <transformers>
            <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
              <manifestEntries>
                <Main-Class>org.comany.MainClass</Main-Class>
                <Build-Number>123</Build-Number>
              </manifestEntries>
            </transformer>
          </transformers>
        </configuration>
      </execution>
    </executions>
  </plugin>
</plugins>
Run Code Online (Sandbox Code Playgroud)

...

但是当我尝试使用java -jar app.jar运行jar时,它会出现以下错误

 "no main manifest attribute, in  app.jar"
Run Code Online (Sandbox Code Playgroud)

编辑:我使用jar tf app.jar检查了jar的内容,我看到了一个MANIFEST.MF文件.BUt它没有主类的条目.如何确保jar中的清单文件将此条目分开,以便在树荫插件配置中添加它?

java jar manifest maven maven-shade-plugin

5
推荐指数
2
解决办法
6163
查看次数

无法在app.jar中运行docker镜像 - 没有主要清单属性

无法运行构建的docker镜像.当我使用命令运行时

docker run -p 8080:8080 -t {image prefix name}/{image name}
Run Code Online (Sandbox Code Playgroud)

我收到一条消息 "no main manifest attribute, in app.jar"

使用docker-maven-plugin并尝试maven-assembly-plugin与主类明确调出.

docker version Boot2Docker 1.7.0

java maven docker

5
推荐指数
1
解决办法
5187
查看次数

谷歌的pepk-src不起作用

我正在尝试按照Google Developer's Console上的说明来检索.pem证书的私钥,以与Google Play应用签名结合使用。由于我没有使用Java密钥库,因此尝试了高级说明,但是在执行文件时no main manifest attribute, in pepk-src.jar出现错误。是什么赋予了?我正在使用java version "1.8.0_101"

java android

5
推荐指数
1
解决办法
1047
查看次数

在Linux中执行jar文件

我创建了一个可执行的Java .jar文件.也就是说,我在.jar文件中正确打包了一个java程序,包括一个META-INF/MANIFEST文件.

(顺便说一句,在安装了Java的大多数Windows机器上,.jar文件被注册为运行类似的东西javaw.exe -jar %1,所以你可以双击那些以这种方式准备好的jar.)

我只是将同一个文件复制到Linux中并试图做同样的事情.

但是,当我点击该文件时,它只是将jar作为zip文件打开,而不是调用java.

如何配置我的Linux系统,以便在双击jar文件时执行jar中的程序?也就是说,如何让我的系统调用类似于java -jar test.jar双击test.jar的东西?

java linux jar

3
推荐指数
1
解决办法
6万
查看次数