root@Ubuntu:/home/rt/chisel-examples/hello-world# sbt clean update [info] welcome to sbt 1.10.11 (Ubuntu Java 21.0.6) [info] loading project definition from /home/rt/chisel-examples/hello-world/project [info] loading settings for project hello-world from build.sbt... [info] set current project to hello-world (in build file:/home/rt/chisel-examples/hello-world/) [success] Total time: 0 s, completed 2025年3月26日 17:08:13 [info] Updating hello-world_2.12 [info] Resolved hello-world_2.12 dependencies [warn] [warn] Note: Unresolved dependencies path: [error] sbt.librarymanagement.ResolveException: Error downloading edu.berkeley.cs:chisel3-plugin_2.12.18:3.5.3 [error] Not found [error] Not found [error] not found: /root/.ivy2/localedu.berkeley.cs/chisel3-plugin_2.12.18/3.5.3/ivys/ivy.xml [error] not found: https://repo1.maven.org/maven2/edu/berkeley/cs/chisel3-plugin_2.12.18/3.5.3/chisel3-plugin_2.12.18-3.5.3.pom [error] at lmcoursier.CoursierDependencyResolution.unresolvedWarningOrThrow(CoursierDependencyResolution.scala:347) [error] at lmcoursier.CoursierDependencyResolution.$anonfun$update$39(CoursierDependencyResolution.scala:316) [error] at scala.util.Either$LeftProjection.map(Either.scala:573) [error] at lmcoursier.CoursierDependencyResolution.update(CoursierDependencyResolution.scala:316) [error] at sbt.librarymanagement.DependencyResolution.update(DependencyResolution.scala:60) [error] at sbt.internal.LibraryManagement$.resolve$1(LibraryManagement.scala:60) [error] at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$12(LibraryManagement.scala:142) [error] at sbt.util.Tracked$.$anonfun$lastOutput$1(Tracked.scala:74) [error] at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11(LibraryManagement.scala:144) [error] at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11$adapted(LibraryManagement.scala:131) [error] at sbt.util.Tracked$.$anonfun$inputChangedW$1(Tracked.scala:220 [error] at sbt.internal.LibraryManagement$.cachedUpdate(
时间: 2025-07-12 17:43:38 浏览: 14
<think>好的,我现在需要解决用户提到的sbt构建错误,具体是关于未找到chisel3-plugin_2.12.18版本3.5.3的依赖问题。用户遇到了sbt.ResolveException,显示这个依赖无法解析。我需要根据提供的引用信息和常见解决方案来思考解决办法。
首先,用户提供的引用[3]中提到了scalaVersion是2.11.12,而依赖项使用的是chisel3和chisel-iotesters的较旧版本(3.1.2和1.2.3)。但现在用户遇到的错误是关于chisel3-plugin_2.12.18版本3.5.3,这说明用户可能升级了Scala版本到2.12.18,或者项目配置中Scala版本与插件版本不兼容。
Chisel插件通常需要与Scala版本和Chisel主库版本严格对应。例如,如果用户使用的是Chisel 3.5.3,可能需要对应的插件版本,同时确保Scala版本匹配。检查Chisel官方文档或仓库的发布说明,确认3.5.3版本兼容的Scala版本是否为2.12.x,或者是否存在其他配置要求。
接下来,用户可能没有正确配置resolvers,导致sbt无法从正确的仓库下载依赖。Chisel可能托管在Maven Central或者其他仓库,比如Sonatype。需要确保在build.sbt中添加必要的解析器,例如:
resolvers += "Sonatype Releases" at "https://oss.sonatype.org/content/repositories/releases/"
另外,检查依赖项的格式是否正确。对于Chisel插件,通常需要在project/plugins.sbt中添加,或者在build.sbt中配置。例如,确保依赖项的格式为:
addCompilerPlugin("edu.berkeley.cs" % "chisel3-plugin" % "3.5.3" cross CrossVersion.full)
同时,Scala版本2.12.18需要与插件的交叉编译版本匹配,即chisel3-plugin_2.12.18,这里可能存在版本号或名称错误。比如,可能正确的插件版本是3.5.3,但实际发布时可能名称或版本号有差异,需要确认。
此外,用户可能遇到了缓存问题,可以尝试清理sbt缓存(~/.ivy2和~/.sbt),然后重新加载项目。另外,检查网络连接是否正常,是否有代理或防火墙阻止访问仓库。
如果用户使用了代理或企业环境,可能需要配置sbt的代理设置,或者在构建文件中处理SSL证书问题,如引用[4]提到的PKIX错误,可能需要导入正确的证书。
最后,如果问题仍然存在,可能需要降级或升级Chisel版本,确保Scala版本、插件版本和主库版本一致。例如,用户引用[3]中的scalaVersion是2.11.12,而错误中的Scala版本是2.12.18,两者不兼容,需要统一版本。</think>### 解决sbt未找到chisel3-plugin依赖的步骤
#### 1. **确认版本兼容性**
Chisel插件版本需与Scala版本和Chisel主库版本严格匹配。例如:
- **Chisel 3.5.x** 通常对应 **Scala 2.12+** 和 **插件版本3.5.x**[^3]。
- 检查`build.sbt`中的配置是否一致:
```scala
scalaVersion := "2.12.18" // 必须与插件要求的Scala版本匹配
libraryDependencies += "edu.berkeley.cs" %% "chisel3" % "3.5.3"
addCompilerPlugin("edu.berkeley.cs" %% "chisel3-plugin" % "3.5.3")
```
#### 2. **添加仓库解析器**
Chisel依赖可能未托管在默认仓库中,需显式添加Sonatype仓库:
```scala
resolvers += "Sonatype Releases" at "https://oss.sonatype.org/content/repositories/releases/"
```
#### 3. **检查依赖语法**
- **插件依赖语法**需使用`addCompilerPlugin`而非`libraryDependencies`:
```scala
addCompilerPlugin("edu.berkeley.cs" %% "chisel3-plugin" % "3.5.3")
```
- 确保`%%`自动匹配Scala版本,若手动指定则为:
```scala
addCompilerPlugin("edu.berkeley.cs" % "chisel3-plugin_2.12.18" % "3.5.3")
```
#### 4. **清理缓存并重试**
- 删除sbt缓存:
```bash
rm -rf ~/.ivy2/cache/edu.berkeley.cs/
rm -rf ~/.sbt/
```
- 重新加载项目:在sbt shell中执行`reload`和`update`。
#### 5. **处理网络或证书问题**
若出现`PKIX path building failed`错误(如引用[4]),需导入仓库的SSL证书或配置sbt忽略证书检查:
```scala
ThisBuild / updateOptions := updateOptions.value.withGigahorse(false) // 禁用Gigahorse(旧版sbt)
```
#### 6. **降级版本(备用方案)**
若问题仍存在,可尝试使用兼容的旧版本组合(参考引用[3]):
```scala
scalaVersion := "2.11.12"
libraryDependencies += "edu.berkeley.cs" %% "chisel3" % "3.1.2"
addCompilerPlugin("edu.berkeley.cs" %% "chisel3-plugin" % "3.1.2")
```
阅读全文
相关推荐



















