我刚刚将Scala升级到2.11,现在我无法导入scala.swing。我该如何从中恢复?我可以只下载一个jar文件,或者像这样简单的东西吗?我希望我不必建造任何东西。
编辑:如果可能,解决方案应该可以在Eclipse中使用,而无需从源代码构建任何内容。
答案 0 :(得分:4)
Here是如何为此更新依赖关系的示例。
在2.11中,标准库的很多部分被分成了自己的模块,包括Swing的东西。
答案 1 :(得分:1)
我有同样的问题,但是在遵循了一些步骤之后,我成功地使用了Scala.swing。
以下是我遵循的一些步骤,希望它能为您提供帮助。
1)将外部jar添加到javaBuildPath(右键单击Project - > Proprties-> javaBuildPath->添加外部Jars->添加scala.swing.x)
2)执行此操作后,我发现了typeNotFound错误
3)创建类,因为你想要为swing做代码
4)创建对象,在main()中,你必须通过新关键字
创建上面的类对象5)执行此操作后,它允许您访问SimpleSwingApplication的方法,因此调用startup()。
6)多数民众赞成,
考虑以下示例,如果可能有助于您理解我的意思,
class FirstUI extends SimpleSwingApplication
{
def top= new MainFrame {
title = "GUI Program #1"
preferredSize = new Dimension(320, 240)
contents = new Label("Here is the contents!")
}
}
object First
{
def main(str: Array[String])
{
val f =new FirstUI
f.startup(str)
}
}
将此文件另存为First.scala并运行它。希望这对您有帮助。
答案 2 :(得分:0)
只需将scala-library.jar
添加到项目的依赖项中即可。
您可以从this overload检索预编译的文件。在README文件的顶部,您有蓝色图标指向现有版本。现在,project webpage适用于Scala v2.11。在此页面上,下载jar文件的链接位于右侧。
下载jar文件后,打开eclipse并进入项目属性(右键单击项目根目录/属性)。在 Java Build Path 选项卡中,添加刚刚下载的文件的路径。
请注意,在我的情况下,我还必须添加select col1, col2 from table
(可在Scala主页中下载的zip文件中找到)。 Eclipse中的 Problem 选项卡帮助我调试了这个问题。
答案 3 :(得分:0)
我为这个混乱挣扎了很多。我还需要将/ usr / share / java / scala /中的scala-swing.jar和scala-library.jar都包含为项目的外部JAR。 (在属性> Java构建路径>库中)
然后,JRE系统库也将不可用。例如,“工作区默认值:JRE(java-1.8.0-openjdk-1.8.0.212.b04-0.fc29.x86)”无效,但“执行环境:JavaSE-1.8(java-1.8.0-openjdk- 1.8.0.212.b04-0.fc29.x86_64)“正常工作。我不知道将其添加为“工作区默认”与“执行环境”有什么区别
至少在Fedora 29中,如果我没有添加“ Scala库容器”,那么Eclipse也会出错,尽管我已经将scala-library.jar作为外部JAR。
但是在编译scala时出现错误: “在plotchartlib(2.10.6)的构建路径中找到的scala库版本早于scala IDE(2.12.3)提供的版本。设置匹配的Scala安装选择。”
我仍然需要做的是在属性> Java Build Path> Order and Export中,必须将“ Scala库容器[2.12.3]”放到底部,并在其上方有scala-library.jar。 >
我不知道为什么这么困难,是因为Fedora 29如何配置Eclipse,但是花了2个工作日才能使它工作。