scala安装后命令行启动出现java异常

有用书生 2023-09-06 15:44:29

1. 在windows环境下,安装Java运行环境和SDK

2. 安装scala

3. 在cmd命令行直接输入scala启动scala环境,出现以下异常

Exception in thread "main" java.nio.file.InvalidPathException: Illegal char <:> at index 2:  C:\Java\jdk1.8.0_341\lib\tools.jar
        at sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
        at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
        at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
        at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94)
        at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255)
        at java.nio.file.Paths.get(Paths.java:84)
        at dotty.tools.dotc.core.MacroClassLoader$.$anonfun$1(MacroClassLoader.scala:25)
        at scala.collection.immutable.List.map(List.scala:250)
        at dotty.tools.dotc.core.MacroClassLoader$.makeMacroClassLoader(MacroClassLoader.scala:25)
        at dotty.tools.dotc.core.MacroClassLoader$.init(MacroClassLoader.scala:19)
        at dotty.tools.dotc.Driver.setup(Driver.scala:77)
        at dotty.tools.repl.ReplDriver.setupRootCtx(ReplDriver.scala:89)
        at dotty.tools.repl.ReplDriver.initialCtx(ReplDriver.scala:85)
        at dotty.tools.repl.ReplDriver.resetToInitial(ReplDriver.scala:111)
        at dotty.tools.repl.ReplDriver.<init>(ReplDriver.scala:126)
        at dotty.tools.repl.Main$.main(Main.scala:7)
        at dotty.tools.MainGenericRunner$.run$1(MainGenericRunner.scala:193)
        at dotty.tools.MainGenericRunner$.process(MainGenericRunner.scala:270)
        at dotty.tools.MainGenericRunner$.main(MainGenericRunner.scala:281)
        at dotty.tools.MainGenericRunner.main(MainGenericRunner.scala)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at coursier.bootstrap.launcher.a.a(Unknown Source)
        at coursier.bootstrap.launcher.Launcher.main(Unknown Source)

 

尝试过安装JDK17,JDK20和JDK1.8,都出现同样错误。

 

...全文
350 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yule.yang 2023-09-06
  • 打赏
  • 举报
回复

根据您提供的信息,异常发生在Windows环境下启动Scala环境时。异常的详细信息指出,Java的tools.jar文件的路径包含无效的字符"<:>"。

这通常是由于Windows文件路径中的特殊字符引起的。在Windows环境下,文件路径中的某些字符(例如"<"和">")可能被解释为特殊字符,导致无效的路径。

要解决这个问题,您可以尝试以下方法:

检查Java的安装路径:确认Java的安装路径是否包含特殊字符。如果可能,尝试将Java的安装路径更改为不包含特殊字符的路径。
使用短文件路径:在Windows环境下,有时使用短文件路径可以解决类似的问题。您可以通过在命令行中使用cd命令来更改当前目录到Java的安装目录,并使用相对路径来引用tools.jar文件。
例如,假设Java的安装路径为C:\Java\jdk1.8.0_341,您可以使用以下命令启动Scala环境:

bash
cd C:\Java\jdk1.8.0_341\bin
scala
配置环境变量:确保Java的安装路径已经正确地配置到系统的环境变量中。这可以确保在命令行中直接输入java或scala命令时,系统能够正确地找到并使用正确的Java和Scala版本。
希望这些方法能够帮助您解决问题并成功启动Scala环境。

Yuanrenyou 2023-09-06
  • 打赏
  • 举报
回复

学习了

小明爱吃火锅 2023-09-06
  • 打赏
  • 举报
回复

试试下面方法呢
检查Java和Scala的安装路径:确保Java和Scala的安装路径中没有包含特殊字符(如冒号":")或者空格。Windows环境中的路径名通常不包含这些字符,因为它们可能导致命令行解析出现问题。

检查环境变量设置:确保Java和Scala的环境变量设置正确。您可以检查以下环境变量:

JAVA_HOME:确保该变量指向正确的Java安装路径。
PATH:确保在PATH环境变量中包含了Java和Scala的可执行文件路径。可以在命令行中输入"echo %JAVA_HOME%"和"echo %SCALA_HOME%"来检查这些变量的值。
检查命令行输入:请确保您在命令行中正确输入了Scala的启动命令。通常,您需要输入类似"scala"的命令来启动Scala环境。如果使用了绝对路径,请确保路径中没有无效字符或空格。

诞生 很早的时候,我们使用BTrace排查问题,在感叹BTrace的强大之余,也曾好几次将线上系统折腾挂掉。2012年淘宝的聚石写了HouseMD,将 常用的几个Btrace脚本整合在一起形成一个独立风格的应用,但其核心代码用的是Scala,我们没这方面的编程维护经验,所以只好艳羡HouseMD 的才思敏捷而无法在其上增加功能。 于是乎,Greys诞生了。 PS:目前Greys仅支持Linux/Unix/Mac上的Java6 ,Windows暂时无法支持 Greys是一个java进程执行过程中的异常诊断工具。 在不中断程序执行的情况下轻松完成问题排查工作。 和HouseMD一样,Greys-Anatomy取名同名美剧“实习医生格蕾”,目的是向前辈致敬。代码编写的时候参考了BTrace和HouseMD两个前辈的思路。 目标群体 有时候突然一个问题反馈上来,需要入参才能完成定位,但恰恰没有任何日志。回去加上重新部署,一杯咖啡时间过去了,是不是很崩溃? 当你经过反复这样几次折腾之后变得聪明了,在自己的代码的所有入参和出参地方都加上debug日志,但这次问题似乎暴露在别人的代码中了...是不是很无奈? 突然遇到线上一个性能问题无法确定到底是哪个环节的耗时,只能反复抓jstack猜,还有没有办法可以好好的过日子啦? 遇到以上问题时,你就是我们这类工具的目标客户,此类工具能利用Java6的Instrumentation特性,动态增强你所指定的类,获取你想要到的信息。 我们的座右铭 让程序解决繁琐的事情 特性功能 交互方式 命令行交互 内置功能 查看加载类,方法信息 方法执行监控(调用量,成功失败率,响应时间) 方法执行数据观测(参数,返回结果,异常信息等) 方法执行数据记录 性能开销渲染 方法执行数据自定义观测(js脚本) 查看方法调用堆栈 软件特点 纯Java实现的开源项目 安装使用便捷,仅一个jar包 可无需重启JVM进行CT式诊断 Groovy表达式展开变量,方便你查看入参、出参、异常、当前对象的各种属性细节 常用分析命令集成,monitor、trace等 观察变量的出入参 时间隧道,tt命令能以时间维度纪录下监控期内的每一次调用环境 多人并行协作 基于C/S架构的任务模式甚至能让多人同时远程到同一进程上执行不同的指令、脚本,非常适合团队一起进行线上问题排查与跟踪。Greys采用纯Java编写并留有良好的扩展,如果你有需求,只要你会Java,就可以为你自己编写想要的功能。 Greys最有利的武器是他的ONGL表达式,能让你在感受到HouseMD集成功能便利的同时,也能发挥出自定义Btrace脚本的灵活。 应用管理员拥有JVM进程权限,由他来首先在目标JVM上启动Greys 技术专家A和B平时没有对应机器的权限,但只要网络能访问,他们可以通过指定ip:port直接访问目标机器的JVM进程,仿佛在本地一般 标签:greys

1,271

社区成员

发帖
与我相关
我的任务
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
  • Spark
  • shiter
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧