Scala:从其他文件导入类

时间:2019-02-15 15:41:12

标签: scala function import

在Scala中,我想将我的类与主函数分开,并将其放在单独的文件中。

我的工作示例如下所示。当我将point.scala的内容放入xtest.scala中时。我可以加载文件:load xtest.scala并通过Demo.main(Array("h"))执行代码。很好。

但是,一旦我将类与主函数分离开了。我遵循使用Maven进行编译的过程:

  1. mvn编译

  2. mvn软件包

这给了我jar文件Test / target / Test-0.0.1.jar,其中有Point.class。如何在我的主要功能中导入该jar文件? import Test.target.Point似乎无效。

point.scala:

class Point(val xc: String) {
   var x: String = xc;

   def plot(dx: String): String = {
      val output: String = x + " " + dx;
      return output;
   }
}

xtest.scala:

import Test.target.Test.Point

object Demo {
   def main(args: Array[String]) {
      val pt = new Point("Hello,");

      var greeting: String = pt.plot("Jack");
      println(greeting);
   }
}

1 个答案:

答案 0 :(得分:1)

确保添加了package Test.target.Test

point.scala

package Test.target.Test

class Point(val xc: String) {
   var x: String = xc;

   def plot(dx: String): String = {
      val output: String = x + " " + dx;
      return output;
   }
}

xtest.scala

import Test.target.Test.Point

object Demo {
   def main(args: Array[String]) {
      val pt = new Point("Hello,");

      var greeting: String = pt.plot("Jack");
      println(greeting);
   }
}

希望有帮助。