【问题标题】:App engine update LocalIOException always应用引擎总是更新 LocalIOException
【发布时间】:2015-10-14 07:43:56
【问题描述】:

我正在使用 Google App Engine 和 Unity3d 做一个项目。我有一个正常的 html 网页,效果很好。

昨天,我在这个 html 页面中添加了一个链接来执行使用 Unity 5 生成的 WebGL 应用程序,但是当我尝试使用 appengine 的 webapp 文件夹中生成的 WebGL Unity 项目执行 mvn appengine:update 时,我遇到了这个错误:

com.google.appengine.tools.admin.LocalIOException:文件 /var/folders/zr/pl8tj40d3tj4dppc2mlyvnqc0000gn/T/appcfg1711881524291507563.tmp/Release/WebGL2.data 太大(限制为 32000000 字节)。

包含这个 WebGL 应用程序只是一个测试。我不在乎我的最终网页中是否没有此应用程序。从我的 webapp 文件夹中删除 WebGL 文件,不能解决这个问题。也不执行 mvn appengine:rollback

现在,我不能再执行 appengine 更新了!总是显示这个错误!

我也尝试手动删除错误路径中的文件,但无法正常工作。这是我的完整日志:

无法更新: com.google.appengine.tools.admin.LocalIOException:文件 /var/folders/zr/pl8tj40d3tj4dppc2mlyvnqc0000gn/T/appcfg1711881524291507563.tmp/Release/WebGL2.data 太大(限制为 32000000 字节)。 在 com.google.appengine.tools.admin.AppVersionUpload.scanFiles(AppVersionUpload.java:296) 在 com.google.appengine.tools.admin.AppVersionUpload.uploadFilesTransaction(AppVersionUpload.java:222) 在 com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java:200) 在 com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:572) 在 com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:58) 在 com.google.appengine.tools.admin.AppCfg$UpdateAction.execute(AppCfg.java:1464) 在 com.google.appengine.tools.admin.AppCfg.executeAction(AppCfg.java:356) 在 com.google.appengine.tools.admin.AppCfg.(AppCfg.java:221) 在 com.google.appengine.tools.admin.AppCfg.(AppCfg.java:126) 在 com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:122) 在 com.google.appengine.appcfg.AbstractAppCfgMojo.executeAppCfgCommand(AbstractAppCfgMojo.java:250) 在 com.google.appengine.appcfg.Update.execute(Update.java:32) 在 org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80) 在 org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) 在 org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) 在 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) 在 org.apache.maven.cli.MavenCli.execute(MavenCli.java:862) 在 org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286) 在 org.apache.maven.cli.MavenCli.main(MavenCli.java:197) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 在 org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 在 org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) com.google.appengine.tools.admin.AdminException:无法更新应用程序:文件 /var/folders/zr/pl8tj40d3tj4dppc2mlyvnqc0000gn/T/appcfg1711881524291507563.tmp/Release/WebGL2.data 太大(限制 32000000 字节)。 在 com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:578) 在 com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:58) 在 com.google.appengine.tools.admin.AppCfg$UpdateAction.execute(AppCfg.java:1464) 在 com.google.appengine.tools.admin.AppCfg.executeAction(AppCfg.java:356) 在 com.google.appengine.tools.admin.AppCfg.(AppCfg.java:221) 在 com.google.appengine.tools.admin.AppCfg.(AppCfg.java:126) 在 com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:122) 在 com.google.appengine.appcfg.AbstractAppCfgMojo.executeAppCfgCommand(AbstractAppCfgMojo.java:250) 在 com.google.appengine.appcfg.Update.execute(Update.java:32) 在 org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80) 在 org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) 在 org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) 在 org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) 在 org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) 在 org.apache.maven.cli.MavenCli.execute(MavenCli.java:862) 在 org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286) 在 org.apache.maven.cli.MavenCli.main(MavenCli.java:197) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 在 org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 在 org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 原因:com.google.appengine.tools.admin.LocalIOException:文件 /var/folders/zr/pl8tj40d3tj4dppc2mlyvnqc0000gn/T/appcfg1711881524291507563.tmp/Release/WebGL2.data 太大(限制为 32000000 字节)。 在 com.google.appengine.tools.admin.AppVersionUpload.scanFiles(AppVersionUpload.java:296) 在 com.google.appengine.tools.admin.AppVersionUpload.uploadFilesTransaction(AppVersionUpload.java:222) 在 com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java:200) 在 com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:572) ... 30 更多

请问有什么想法吗? 提前非常感谢:(

【问题讨论】:

    标签: java maven google-app-engine


    【解决方案1】:

    Google App Engine 有一些限制。您遇到的一个是最大文件大小限制(32.000.000 字节,大约 30 MB)。

    如果您使用的是 maven,maven 实际上会将您的文件复制到另一个名为 target 的文件夹中。您必须执行“清理”以删除该文件夹,以便可以从头开始重新创建它。每次进行更新时,它都会将新的和更改的文件复制到目标文件夹并用于部署(它不会从目标中删除已删除的文件)

    【讨论】:

    • 谢谢!我不知道。执行 mvn clean 清除该文件夹并再次工作:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 2015-08-27
    相关资源
    最近更新 更多