如何使mvnw在Spring Boot应用程序中包含本地专有代码

时间:2019-10-01 19:25:58

标签: maven spring-boot war

我有一个Spring Boot应用程序,试图将其编译为正确的WAR文件。使用mvnw脚本,我遇到编译失败。

问题是我工作的公司有一组专有类和JAR,要在Spring Boot中使用 应用。该公司正在使用Eclipse。这些专有资源位于单独的源文件夹(对于Java文件)和文件夹(对于jars)。在IDE中,我们可以将jar设置为包含在编译中,并且当我们将应用程序编译为可运行的jar并运行时,所有内容都会编译。

不幸的是,如果我们要创建部署,则无论创建战争还是jar都没有关系,mvnw找不到公司的Java或jar文件,并且编译失败。

创建WAR文件没有问题。我们对pom文件和主类进行了适当的更改,并且只要不使用公司专有的东西,mvnw就会编译并运行jar(或者它会正确创建在Tomcat上运行良好的WAR)。只有当我们要使用专有代码时,mvnw编译才会失败。

我确定必须有某种方法可以使mvnw在外部jar中包含外部jar和代码,因为肯定其他公司在jar中具有专有代码,因此需要将它们包含在Spring Boot应用程序中。我只是不知道该怎么做。

那么如何在Spring Boot应用程序中包含这样的代码,以便mvnw进行编译?

1 个答案:

答案 0 :(得分:0)

我找到了一种创建WAR文件的方法。

在Eclipse中,我发现如果导出到WAR文件,则IDE实际上会编译所有内容,包括Maven依赖项和任何其他定义的源文件。产生的WAR具有运行该应用程序所需的一切。

成功完成此操作后,我遇到了另一个问题,我将在另一个问题中进行描述。