Scala类路径未在本地目录

时间:2015-06-11 03:17:56

标签: scala classpath

考虑一个带有以下前两行(默认/无包)和一个main()的v简单scala对象:

object CpuTest {
 def main(args: Array[String]) = {
      ..

编译工作正常

stephen@i386:/shared/OpenChai/dstat$ scalac CpuTest.scala

以下是课程:

stephen@i386:/shared/OpenChai/dstat$ ls -l *.class
-rw-rw-r-- 1 stephen stephen 1150 Jun 10 20:06 CpuTest$$anonfun$1.class
-rw-rw-r-- 1 stephen stephen  667 Jun 10 20:06 CpuTest.class
-rw-rw-r-- 1 stephen stephen 1748 Jun 10 20:06 CpuTest$.class
-rw-rw-r-- 1 stephen stephen 2175 Jun 10 20:06 CpuTest$MyThread$1$$anonfun$run$1.class
-rw-rw-r-- 1 stephen stephen 1444 Jun 10 20:06 CpuTest$MyThread$1.class

javap 很满意:

stephen@i386:/shared/OpenChai/dstat$ javap CpuTest.class
Compiled from "CpuTest.scala"
public final class CpuTest {
  public static void main(java.lang.String[]);
}

但是我无法让classpath运行这个类:

export CLASSPATH="$(pwd)/*"

echo "$CLASSPATH"
/shared/OpenChai/dstat/*

stephen@i386:/shared/OpenChai/dstat$ scala CpuTest
No such file or class on classpath: CpuTest
stephen@i386:/shared/OpenChai/dstat$ scala -classpath "$CLASSPATH" CpuTest
No such file or class on classpath: CpuTest

这应该很简单。我错过了什么?

更新我找到了解决方法:需要添加“。”到类路径:

scala -classpath "$CLASSPATH":. CpuTest

现在我不明白为什么应该这样:原来的CLASSPATH已经包含了.class文件。

1 个答案:

答案 0 :(得分:0)

我在滥用

<path>/*
类路径中的

:通配符仅支持jar文件,而不支持.class文件。