当前位置: 首页 > 知识库问答 >
问题:

Spring靴中的罐子包装

谷梁星雨
2023-03-14

我正在创建一个Spring引导多模块项目…模块A对模块B有依赖关系。

          mvn spring-boot:run
          java -jar Module-A.jar
 <parent>
    <artifactId>Module-Test</artifactId>
    <groupId>com.module</groupId>
    <version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>Module-A</artifactId>
<packaging>jar</packaging>

<properties>
    <start-class>com.NotifyApp</start-class>
    <main.class>com.NotifyApp</main.class>
</properties>

<dependencies>
    <dependency>
        <groupId>com.module</groupId>
        <artifactId>Module-B</artifactId>
        <version>${project.version}</version>
    </dependency>
</dependencies>

<build>
    <plugins>
    <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        <executions>
            <execution>
                <goals>
                    <goal>repackage</goal>
                </goals>
            </execution>
        </executions>
        </plugin>
    </plugins>
</build>

未能执行goal org.springframework.boot:spring-boot-maven-plugin:1.4.2。release:repackage(默认值)在项目模块上-a:goal org.springframework.boot:spring-boot-maven-plugin:1.4.2的执行默认值。release:repackage失败:源代码必须将r重新添加到现有文件

父pom.xml

 <modelVersion>4.0.0</modelVersion>
<artifactId>Module-Test</artifactId>
<groupId>com.module</groupId>
<version>1.0.0-SNAPSHOT</version>
<modules>
    <module>Module-A</module>
    <module>Module-B</module>
    <module>Module-C</module>        
</modules>
<packaging>pom</packaging>

<parent>
    <artifactId>Module-Parent</artifactId>
    <groupId>com.parent</groupId>
    <version>1.0.2</version>
</parent>


<dependencyManagement>
    <dependencies>
        <dependency>
           <groupId>com.module</groupId>
            <artifactId>Module-A</artifactId>
            <version>${project.version}</version>
        </dependency>
       <dependency>
           <groupId>com.module</groupId>
            <artifactId>Module-B</artifactId>
            <version>${project.version}</version>
        </dependency>
          <dependency>
           <groupId>com.module</groupId>
            <artifactId>Module-C</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>com.module</groupId>
            <artifactId>starter-service</artifactId>
            <version>${starter.version}</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>
    </dependencies>
</dependencyManagement>

共有1个答案

公冶谦
2023-03-14

我通常为maven使用这个插件https://maven.apache.org/plugins/maven-dependency-plugin/examples/copplication-project-dependencies.html,当您运行时,它会将所有的依赖项jar放入target/dependencies中

mvn clean package

然后,我将JAR复制到一个文件夹(我通常称之为lib),并在类路径中包含lib/*。最后的运行脚本通常如下所示

java -cp lib/*: my.package.MySpringBootMain
 类似资料:
  • 我试图在spring boot应用程序中构建shaded jar,但是遇到了一些问题。我不知道我做错了什么。我还阅读了以下链接,但没有运气maven-shade-plugin错误:无法在org . Apache . maven . plugins . shade . resource . manifestresourceformer中找到“resource”的setter、adder或field

  • 任何人都可以使用带有Spring bootJar任务和以下版本的gradle创建可执行和不可提取的jar: Spring boot 2.6.7(2.6. x), gradle 6.9.0, Spring Cloud 2021.0.0,Java版本8 以下是可能有所帮助的参考资料: Spring Boot·格拉德:如何构建可执行的jar 其他参考资料将很有帮助。 我无法创建不可提取和可执行的jar。

  • 我在容器中运行SpringBoot的一大组服务上工作。我们构建一个“Spring Boot Jar”并用“java -jar”执行它作为容器中的启动脚本。 我被要求实现一些概念上看起来很简单的东西,但我发现它可能相当粗糙。 需要发生的是,脚本需要检查映射卷中的特定 jar 文件,如果存在,请使用增强的类路径(包括其他 jar)运行Spring启动服务。 我意识到这非常混乱,因为当你用“java -

  • 有什么不同?我可以在联机主机上部署吗?

  • 任何建议都会有帮助的!谢了!

  • mvn清理包-dskiptests=true&unzip target/demo-0.0.1-snapshot.jar-d已爆炸 Lombok是打包的,如果我将作用域设置为或仅具有则无关紧要。 如何防止龙目岛被包括到Spring靴罐? 重新打包失败:必须提供源文件

  • 问题内容: 我正在尝试创建包装另一个jar的OSGi服务。我将jar添加到项目,类路径和二进制构建中。我在Activator中注册了该服务,但是当消费包调用该服务时,我在包装jar上得到了java.lang.NoClassDefFoundError。有人知道我在做什么错吗? 提前致谢。 问题答案: 您是否正在导出使用者所需的软件包以及实施所需的所有软件包。消费者将需要导入将被引用的所有内容。 附带

  • 在过去的6个月里,我一直在从repl运行我的Clojure应用程序。 也就是说,每当我想运行应用程序时,我都会加载一个clojure repl,然后输入:(加载文件“src/run.clj”)。。。它运行我的应用程序。 然后,clojure加载了我所有的*。clj文件,编译并运行。 我最近换了莱恩。我想“提前编译/打包”我的代码,这样我就可以得到一个带有Main方法的jar,并通过“java…”直