首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解析sbt项目时的java.nio.file.InvalidPathException

解析sbt项目时的java.nio.file.InvalidPathException
EN

Stack Overflow用户
提问于 2020-06-04 12:44:44
回答 1查看 1.4K关注 0票数 1

斯卡拉的超级粉丝,但SBT总是让我在没有牙齿的地方感到牙痛。通常我能应付,但这件事让我有点困惑。有人能帮我做以下几件事吗?

TL/DR

当重新导入我的sbt-项目时,我遇到了以下错误。

[error] (update) java.nio.file.InvalidPathException: Illegal char < > at index 90: C:\Users\\-username-\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\io\cucumbe r\cucumber-junit\5.7.0\cucumber-junit-5.7.0.pom.lock

在解析黄瓜依赖时,导入似乎遇到了一些损坏的路径,包括一个制表符字符。奇怪的是,这是一次再进口;它以前进口过罚款。此外,无法通过资源管理器或外壳找到实际路径C:\Users\\-username-\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\io\cucumbe r\cucumber-junit\5.7.0\

该错误首先发生在将项目导入Intellij中时,但是通过shell使用SBT会产生相同的结果。

详情如下。

有没有人知道如何:

  • 解决这个问题?
  • 防止它再次发生?

项目可以找到这里

完整的SBT日志:

从C加载全局插件的信息:\用户-用户名-..sbt\1.0\ plugins信息加载设置项目沙箱-构建从plugins.sbt .信息加载项目定义从C:\编码\模块\scala\沙箱\项目信息加载设置的项目沙箱从build.sbt .信息将当前项目设置为沙箱(构建文件:/C:/编码/模块/scala/ sandbox /)错误java.nio.file.InvalidPathException:索引90处的非法字符<>:java.base/sun.nio.fs.WindowsPathParser.normalize的r\cucumber-junit\6.0.0-RC2\cucumber-junit-6.0.0-RC2.pom.lock错误( java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153) )错误在java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)错误在java.base/sun.nio.fs.WindowsPath.parse(WindowsPath.java:92)错误在java.base/sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:229)错误在java.base/java.io.File.toPath(文件lmcoursier.internal.shaded.coursier.cache.CacheLocks$.withLockOr(CacheLocks.scala:35)错误,lmcoursier.internal.shaded.coursier.cache.FileCache.$anonfun$download$32(FileCache.scala:508)错误,scala.concurrent.Future$.$anonfun$apply$1(Future.scala:659)错误,scala.util.Success.$anonfun$map$1(Try.scala:255)错误,scala.util.Success.map错误(Try.scala:213)错误,Scala.concurrent.期货,$anonfun$map,1美元(未来)scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33)错误,scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33)错误,scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64)错误,java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)错误,java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)错误,java.base错误C:\Users-username-\AppData\Local\Coursier\cache\v1\https\repo1.maven.org\maven2\io\cucumbe (Thread.java:832) 错误 java.nio.file.InvalidPathException:索引90处的非法字符<>:r\cucumber-junit\6.0.0-RC2\cucumber-junit-6.0.0-RC2.pom.lock错误总时间:1,完成6月4日。2020年13:57:57`

已经试过

  • 删除C:\Users\-username-\AppData\Local\Coursier\cache\目录清除Coursier缓存
  • 通过删除./target./project/target目录来清除项目
  • 将违规的黄瓜依赖项更新为6.0.0-RC2

似乎锁文件仍然存在,而SBT无法重新下载自己?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-14 12:17:06

作为例外报告,有6个空格或一个制表符的许多。这正是第52行中build.sbt文件中的内容:"io.cucumbe\t r“。编程愉快!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62194936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档