Нет основного атрибута манифеста, в jarJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Нет основного атрибута манифеста, в jar

Сообщение Anonymous »

У меня есть весенний проект с Gradle. Я создал задачу в build.gradle:

task dockerFile(type: Dockerfile) {
destFile.set(project.file('Dockerfile'))
from "alpine:$alpineVersion"
runCommand 'apk add --no-cache openjdk11'
copyFile "build/libs/${jar.archiveFileName.get()}", '/app/'
workingDir '/app/'
entryPoint 'java'
defaultCommand '-jar', "/app/${jar.archiveFileName.get()}"
}

Все работает нормально. Dockerfile создается. Но когда я пытаюсь запустить изображение, оно выдает ошибку: нет основного атрибута манифеста в /app/demo-0.0.1-SNAPSHOT-plain.jar
Также вот весь мой build.gradle:
import com.bmuschko.gradle.docker.tasks.image.Dockerfile

plugins {
id 'java'
id 'org.springframework.boot' version '2.7.6'
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
id 'com.bmuschko.docker-remote-api' version '6.6.1' apply false
}

group = 'ms10gradle2'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

configurations {
compileOnly {
extendsFrom annotationProcessor
}
}

repositories {
mavenCentral()
}

dependencies {
implementation "org.springframework.boot:spring-boot-starter-data-jpa:$jpaVersion"
implementation 'org.springframework.boot:spring-boot-starter-web'
compileOnly 'org.projectlombok:lombok'
runtimeOnly 'com.h2database:h2'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('test') {
useJUnitPlatform()
}

task printJpaVer{
print "JPA VERSION: ${jpaVersion}"
}

task printfiles {
doLast {
def files = "cmd.exe /c dir".execute().text.trim()
println(files)
project.getAllprojects().forEach(System.out::print)
}
}

task printTasks{
project.getTasks().forEach{
println("task name: "+ it)
}
}

task printTasksInsideSubModulesTrueOrFalse{
project.getAllTasks(false).entrySet().forEach(System.out::println)
}

task printTaskVersion{
project.getAllprojects()
.forEach(p -> println p.name +"- "+p.getVersion())

print "================================================================"
project.getAllprojects().forEach(p -> println p.getVersion())
}

task dockerFile(type: Dockerfile) {
destFile.set(project.file('Dockerfile'))
from "alpine:$alpineVersion"
runCommand 'apk add --no-cache openjdk11'
copyFile "build/libs/${jar.archiveFileName.get()}", '/app/'
workingDir '/app/'
entryPoint 'java'
defaultCommand '-jar', "/app/${jar.archiveFileName.get()}"
}


и Dockerfile:
FROM alpine:3.11.2
RUN apk add --no-cache openjdk11
COPY build/libs/demo-0.0.1-SNAPSHOT-plain.jar /app/
WORKDIR /app/
ENTRYPOINT ["java"]
CMD ["-jar", "/app/demo-0.0.1-SNAPSHOT-plain.jar"]



Подробнее здесь: https://stackoverflow.com/questions/748 ... ute-in-jar
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • «Нет основного атрибута манифеста» в ----.jar Netbeans
    Anonymous » » в форуме JAVA
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Невозможно выполнить jar-файл: «нет основного атрибута манифеста»
    Anonymous » » в форуме JAVA
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Не удалось запустить файл jar из командной строки: «нет основного атрибута манифеста»
    Anonymous » » в форуме JAVA
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Gradle – нет основного атрибута манифеста
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Gradle – нет основного атрибута манифеста
    Anonymous » » в форуме JAVA
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»