Why does executing activator give ExceptionInInitializerError caused by: java.security.NoSuchAlgorithmException: SHA1 MessageDigest not available?

匿名 (未验证) 提交于 2019-12-03 02:35:01

问题:

Upon executing activator from Typesafe Activator 1.2.12 on cygwin on Windows with Java 8 I'm getting the following exception:

java.lang.ExceptionInInitializerError                                                                                                                                  at xsbt.boot.Update.settings$lzycompute(Update.scala:79)                                                                                                       at xsbt.boot.Update.settings(Update.scala:74)                                                                                                                  at xsbt.boot.Update.ivyLockFile$lzycompute(Update.scala:96)                                                                                                    at xsbt.boot.Update.apply(Update.scala:103)                                                                                                                    at xsbt.boot.Launch.update(Launch.scala:355)                                                                                                                   at xsbt.boot.Launch.xsbt$boot$Launch$$retrieve$1(Launch.scala:210)                                                                                             at xsbt.boot.Launch$$anonfun$3.apply(Launch.scala:218)                                                                                                         at scala.Option.getOrElse(Option.scala:120)                                                                                                                    at xsbt.boot.Launch.xsbt$boot$Launch$$getAppProvider0(Launch.scala:218)                                                                                        at xsbt.boot.Launch$$anon$2.call(Launch.scala:198)                                                                                                             at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:98)                                                                                                    at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:81)                                                                 at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:102)                                                                                   at xsbt.boot.Using$.withResource(Using.scala:11)                                                                                                               at xsbt.boot.Using$.apply(Using.scala:10)                                                                                                                      at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:62)                                                                                          at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:52)                                                                                                         at xsbt.boot.Locks$.apply0(Locks.scala:31)                                                                                                                     at xsbt.boot.Locks$.apply(Locks.scala:28)                                                                                                                      at xsbt.boot.Launch.locked(Launch.scala:240)                                                                                                                   at xsbt.boot.Launch.app(Launch.scala:149)                                                                                                                      at xsbt.boot.Launch.app(Launch.scala:147)                                                                                                                      at xsbt.boot.Launch$.run(Launch.scala:102)                                                                                                                     at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:36)                                                                                                    at xsbt.boot.Launch$.launch(Launch.scala:117)                                                                                                                  at xsbt.boot.Launch$.apply(Launch.scala:19)                                                                                                                    at xsbt.boot.Boot$.runImpl(Boot.scala:44)                                                                                                                      at xsbt.boot.Boot$.main(Boot.scala:20)                                                                                                                         at xsbt.boot.Boot.main(Boot.scala)                                                                                                                     Caused by: java.lang.RuntimeException: The SHA1 algorithm is not available in your classpath                                                                           at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.<clinit>(DefaultRepositoryCacheManager.java:86)                                                     ... 29 more                                                                                                                                            Caused by: java.security.NoSuchAlgorithmException: SHA1 MessageDigest not available                                                                                    at sun.security.jca.GetInstance.getInstance(GetInstance.java:159)                                                                                              at java.security.Security.getImpl(Security.java:695)                                                                                                           at java.security.MessageDigest.getInstance(MessageDigest.java:159)                                                                                             at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.<clinit>(DefaultRepositoryCacheManager.java:84)                                                     ... 29 more                                                                                                                                            Error during sbt execution: java.lang.ExceptionInInitializerError  

sbt works like a charm.

What's a solution?

回答1:

I had similar error one day and in my case I had to unpack some Java *.pack files by hand.

$ find . -type f -name '*.pack'   ./jre/lib/charsets.pack           ./jre/lib/deploy.pack             ./jre/lib/ext/jfxrt.pack          ./jre/lib/ext/localedata.pack     ./jre/lib/javaws.pack             ./jre/lib/jsse.pack               ./jre/lib/plugin.pack             ./jre/lib/rt.pack                 ./lib/tools.pack 

Each file had to be unpacked like unpack200.exe jsse.pack jsse.jar and then problem with "The SHA1 algorithm is not available in your classpath" was solved.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!