我使用内置 tomcat 创建了一个简单的 springboot 应用程序,当我在 Eclipse 中将其作为 JAVA 应用程序运行时,该应用程序运行良好。我尝试将其导出为 WAR 文件,并尝试在 Windows 命令行和 UNIX 框中运行它。我尝试像下面那样执行它,
java -jar C:\Users\Iam\Documents\SpringHelloWorld.war main.java.com.controller.SpringBootWebApplication
Error: An unexpected error occurred while trying to open file C:\Users\Iam\Documents\SpringHelloWorld.war
java -cp C:\Users\Iam\Documents\SpringHelloWorld.war main.java.com.controller.SpringBootWebApplication
Error: Could not find or load main class main.java.com.controller.SpringBootWebApplication
我只是将其导出为 WAR 文件,在 Springboot 中将其导出为 WAR 之前我是否需要定义任何内容(注意:我没有使用 maven 或 gradle)
以下是我的项目结构:
最佳答案
也许没有 Maven/Gradle 就可以做到这一点,但我永远不会采用这种方法。
即使考虑到最好的情况,您最终也会重新创建其他人在 Spring Boot Parento pom.xml 或 Gradle 等效项中创建的内容,那么为什么您会浪费大量时间来重新创建某人已经创建的内容呢?别的?如果您确实想知道 war 是如何创建的,请查看 Spring Boot 父 pom,但您应该限制您的工作以包装已准备好用于生产的内容,以便组成您的解决方案。
还要考虑到 Maven 和 Gradle 会不断开发和更新,一切都属于它们的生态系统。如果您打算替换它们,那么您应该准备好单独维护和开发您自己的构建平台,这是一项艰巨的工作。
最好包含 Maven 或 Gradle,你会更有效率。
关于java - 在没有 maven/Gradle 的情况下创建可执行的 WAR 文件 spring boot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50930114/