代码之家  ›  专栏  ›  技术社区  ›  Garret Wilson

Eclipse 2018-09使用Java 11插件进入无休止的构建循环:ClosedFileSystemException

  •  7
  • Garret Wilson  · 技术社区  · 7 年前

    我想使用新的Java11特性,因此首先我将编译器源/目标从Java8更改为Java11 Eclipse 2018-09 won't compile Java 11 source; thinks it is below 1.7 ).

    因此,我添加了来自Eclipse市场的“Java11对Eclipse 2018-09的支持”插件。我重新启动Eclipse并使用 Alt+F5

    现在Eclipse进入了一个无休止的循环,在8X%已完成到9X%已完成之间跳跃,重复出现无休止的错误,例如:

    !SESSION 2018-09-27 08:08:51.188 -----------------------------------------------
    eclipse.buildId=4.9.0.I20180906-0745
    java.version=11
    java.vendor=Oracle Corporation
    BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
    Framework arguments:  -product org.eclipse.epp.package.jee.product
    Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product
    
    This is a continuation of log file …\.metadata\.bak_0.log
    Created Time: 2018-09-27 08:11:22.981
    
    !ENTRY org.eclipse.core.resources 4 2 2018-09-27 08:11:22.981
    !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.resources".
    !STACK 0
    java.nio.file.ClosedFileSystemException
      at jdk.zipfs/jdk.nio.zipfs.ZipFileSystem.ensureOpen(ZipFileSystem.java:1105)
      at jdk.zipfs/jdk.nio.zipfs.ZipFileSystem.checkAccess(ZipFileSystem.java:332)
      at jdk.zipfs/jdk.nio.zipfs.ZipPath.checkAccess(ZipPath.java:830)
      at jdk.zipfs/jdk.nio.zipfs.ZipFileSystemProvider.checkAccess(ZipFileSystemProvider.java:185)
      at java.base/java.nio.file.Files.exists(Files.java:2439)
      at org.eclipse.jdt.internal.core.builder.ClasspathMultiReleaseJar.findClass(ClasspathMultiReleaseJar.java:206)
      at org.eclipse.jdt.internal.core.builder.ClasspathLocation.findClass(ClasspathLocation.java:58)
      at org.eclipse.jdt.internal.core.builder.NameEnvironment.findClass(NameEnvironment.java:524)
      at org.eclipse.jdt.internal.core.builder.NameEnvironment.findType(NameEnvironment.java:556)
      at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.fromSplitPackageOrOracle(LookupEnvironment.java:414)
      at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.lambda$1(LookupEnvironment.java:289)
      at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForTypeFromModules(LookupEnvironment.java:384)
      at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:288)
      at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:262)
      at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:530)
      at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:254)
      at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:501)
      at org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:868)
      at org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:394)
      at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:444)
      at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:426)
      at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:386)
      at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.compile(BatchImageBuilder.java:214)
      at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:318)
      at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:79)
      at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:265)
      at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:185)
      at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:798)
      at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
      at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:219)
      at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:262)
      at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:315)
      at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
      at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:318)
      at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:370)
      at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:391)
      at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:145)
      at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:235)
      at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
    

    1 回复  |  直到 7 年前
        1
  •  2
  •   Pyves    7 年前

    Bug 539536 ,此问题已在最新版本的Java11支持补丁中修复。该问题是由来自的迁移引起的 拉链 java.nio

    要安装修复程序,请在Eclipse中使用以下更新站点并选择 v20181001-0921 http://download.eclipse.org/eclipse/updates/4.9-P-builds/P20181001-0525/