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

大于Google云平台中允许的最大大小[33554432]

杜弘光
2023-03-14

在GCP上部署Spring启动应用程序时,显示了以下错误。

错误:(gcloud.app.deploy)无法上载文件[/home/info/Project1/target/appengine staging/myproject-0.0.1-SNAPSHOT.jar],该文件的大小为[42865605](大于允许的最大大小[33554432])。请删除该文件或添加到应用程序中的skip\u files条目。yaml文件,然后重试。

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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>myproject</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>myproject</name>
    <description>aaaaaa</description>


    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>    

        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <jjwt.version>0.9.0</jjwt.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-security</artifactId>
        </dependency>

        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-spring-boot-starter-jaxrs</artifactId>
            <version>3.2.5</version>
        </dependency>

        <dependency>
          <groupId>com.google.cloud.sql</groupId>
          <artifactId>mysql-socket-factory</artifactId>
          <version>1.0.9</version>
        </dependency>

        <!-- For Working with Json Web Tokens (JWT) -->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>${jjwt.version}</version>
        </dependency>

        <!-- For Java 8 Date/Time Support -->
        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-jsr310</artifactId>
        </dependency>


    </dependencies>

    <build>
        <plugins>
        <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-war-plugin</artifactId>
              <version>3.0.0</version>
              <configuration>
                <webResources>
                  <!-- in order to interpolate version from pom into appengine-web.xml -->
                  <resource>
                    <directory>${basedir}/src/main/webapp/WEB-INF</directory>
                    <filtering>true</filtering>
                    <targetPath>WEB-INF</targetPath>
                  </resource>
                </webResources>
              </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                  <executions>
                    <execution>
                      <goals>
                        <goal>repackage</goal>
                      </goals>
                    </execution>
                  </executions>
            </plugin>
        <!-- add appengine-maven-plugin -->
            <plugin>
                <groupId>com.google.cloud.tools</groupId>
                <artifactId>appengine-maven-plugin</artifactId>
                <version>1.3.2</version>
                <configuration>
                    <deploy.promote>true</deploy.promote>
                    <deploy.stopPreviousVersion>true</deploy.stopPreviousVersion>
                </configuration>
            </plugin>
        </plugins>

    </build>

</project>

我已经删除了静态文件,但jar文件仍然没有减少。有人请告诉我如何减小jar文件大小吗?

共有3个答案

薛涛
2023-03-14

检查是否在应用程序的appengine web中启用了以下设置。xml/应用程序。yaml或pom。xml

 <staging>
  <enable-jar-classes>true</enable-jar-classes>
  </staging>

它试图将所有类捆绑到一个jar中,这可能会超过GCP施加的限制。放松此设置,可以允许您的部署,尽管现在有点慢。

或者,您可以选择通过Eclipse GUI进行部署:

项目资源管理器

如果启用了该设置,这将处理JAR的允许捆绑,并确保该包得到部署。

司立果
2023-03-14

也许你得跑了

mvn clean package

部署之前,您可能需要更新gcloud SDK

鄢朝斑
2023-03-14

Google App Engine在您的部署中每个文件的配额限制为32 MB(对于GO64 MB)。

因为您使用的是Java快照。jar(40.8 MB)超过了32 MB的限制。

此限制适用于标准环境和弹性环境。

应用程序引擎配额

 类似资料:
  • 问题内容: 我可以一次发送到的最大数据大小HttpURLConnection是Tomcat多少?请求大小是否有限制? 问题答案: maxPostSize 容器FORM URL参数解析将处理的POST的最大大小(以字节为单位)。可以通过将此属性设置为小于或等于0的值来禁用该限制。如果未指定,则将该属性设置为2097152(2兆字节)。 另一个限制是: maxHttpHeaderSize请求和响应HT

  • 我正在处理大量的二进制文件。在最近对本地git repo进行了一次更改之后,我试图将更改推回到远程,结果收到以下错误。 不幸的是,我不能使用这里描述的策略,因为所有的更改都包含在一次提交中。有什么建议吗?我怎样才能绕过这个包装尺寸限制?

  • 我遇到了MySQL的问题。我收到错误。关于StackOverflow,他们说MySQL配置中的很可能太低。 我尝试在中更改它,但该文件是不可编辑的。不能在PA上使用。 我正在使用Sqlalchemy处理与MySQL服务器的交互。 我能做什么?

  • 您可以使用基于浏览器的上传(不是多部分上传)中的内容长度范围字段来限制文件大小:http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOSTConstructPolicy.html 你怎么能在多部分上传中限制它?我正在使用EvaporateJS。

  • pom.xml 即使我有maximumPoolSize 10,我也能够并发地创建500个连接。为什么允许? 我的Hikari连接池设置是否错误?即我是否需要通过在pom.xml中排除它来禁用tomcat连接池(我相信Spring 2.0中不需要它)

  • 我是Java的初学者,刚开始使用Intellij作为我的IDE。 当我使用它时,有时会延迟。 我更改了我的 xms 和 xmx 以获得更大的堆大小(xms = 1024,xmx = 2048),但它抛出了一个错误。 所以,我把它回滚了。 错误消息是这样的:“初始堆大小设置为大于最大堆大小的值”。 有什么问题? 如果可能,如何增加最大堆大小? 我用的是笔记本电脑,它有8GB内存。x64Intelli