我在google云应用程序引擎上托管spring boot应用程序时遇到了一个问题。
我已经主持了一个应用程序在过去的一次成功,以测试它是如何工作的。现在我制作了一个应用程序,它也使用了一个cloudsqlmysql示例,所以它有点复杂。
在这个过程中,我在某个地方迷路了:我用maven(和以前一样)构建了我的项目的根目录,并用“gcloud app deploy.jar”将snapshot jar部署到app engine。上面说上传完成了,我去查看了gcp界面。令我惊讶的是,我发现它说,这个版本的大小为0b!!!不用说,我的托管应用程序无法工作,我甚至无法访问Map到根端点“/”的hello消息。
我完全不知道这是为什么,甚至不知道如何开始修复它。如有任何意见,敬请谅解。
我的pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>accessing-data-mysql</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>accessing-data-mysql</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
1条答案
按热度按时间jrcvhitl1#
如果部署jar,则需要部署胖jar。添加这个构建插件并删除springbootmaven插件(与shade插件冲突)
替换
YOUR MAIN CLASS
通过主类的完全限定路径,然后部署到appengine上。