如何在 sbt、Eclipse 和 github 中初始化新的 Scala 项目

2024-01-06

如何在 sbt、Eclipse 和 github 中初始化一个新的 Scala 项目,以便它们一起运行......


一个新的 Scala 项目通常需要设置 sbt、eclipse(如果您选择的话)和 github,以便它们一起工作。在为此设置投入一些时间后,只要没有更简单的方法可用,那么拥有此列表来调整这 3 个工具/服务可能会有所帮助。以下是对我有用的一系列步骤。它假设您在 eclipse 中安装了 Scala IDE 插件。

  1. 创建一个新的存储库在Github上 https://github.com/new.
  2. 确定新项目的目录位置
  3. 在 eclipse 中,使用 Git Repositories View 将 Github 存储库导入到该位置。或者你可以使用命令行 git 来实现。
  4. 找到您为项目选择的同一位置并运行sbt eclipse。这确保 eclipse 能够处理 sbt 项目结构,以便您的项目可以由 sbt 构建,同时也可以被 eclipse 理解。如果sbt eclipse不起作用,sbt eclipse 插件可能没有安装在 sbt 中 -安装它 https://github.com/typesafehub/sbteclipse.
  5. 在日食中,使用File --> Import --> General --> Existing Projects into Workspace,选择相同的位置,以便 eclipse 为 sbt 刚刚准备好的文件结构构建其项目结构。
  6. 通过更新 .gitignore 文件以忽略 eclipse 和 sbt 文件,使 git 忽略除新项目核心之外的所有内容。目前看来以下内容没问题。

    *.class
    *.log
    
    # sbt specific
    dist/*
    target/
    lib_managed/
    src_managed/
    project/boot/
    project/plugins/project/
    
    # Scala-IDE specific
    .scala_dependencies
    
    # Eclipse specific
    .project
    .classpath
    .cache
    

您现在应该能够在 eclipse 和 sbt 中运行该项目,并通过 git 提交和推送代码更改。要查看空项目的运行情况(这在现阶段可能很有意义),您可以在 eclipse 中向其添加一个 scala 类,其中仅包含以下代码。请注意,scala 源通常应位于 src/main/scala 下。如果此路径尚不存在,请通过例如创建它mkdir -p src/main/scala在 Unix 上。

object hello {
  def main(args: Array[String]) {
    println("Main starting")  
  }
}

或者只有这个代码:

object app extends App {
  println("Application starting")  
}

现在应该可以了。 需要声明的是,未来版本的 eclipse、sbt 等可能会使此内容过时。 如果这在您的环境中是完全错误的,您可以添加更好的答案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 sbt、Eclipse 和 github 中初始化新的 Scala 项目 的相关文章

  • 如何在Slick 3.0.0中使用StaticQuery?

    在 Slick 2 1 中 我使用以下代码从文件执行 sql 查询 def fetchResult T sql String implicit getResult GetResult T List T val query Q queryNA
  • Eclipse 选项卡宽度不变

    我浏览了一些与此相关的帖子 但它们似乎并不能帮助我解决我的问题 我有一个项目 其中 java 文件以 2 个空格的宽度缩进 我想将所有内容更改为 4 空格宽度 我尝试了 正确的缩进 选项 但当我将几行修改为 4 空格缩进时 它只是将所有内容
  • Spark 3 KryoSerializer 问题 - 无法找到类:org.apache.spark.util.collection.OpenHashMap

    我正在将 Spark 2 4 项目升级到 Spark 3 x 我们遇到了一些现有 Spark ml 代码的问题 var stringIndexers Array StringIndexer for featureColumn lt FEAT
  • java.lang.OutOfMemoryError:Scala 上超出了 GC 开销限制

    我是 Scala 开发人员 我在Routes它包含的文件1008行如果我添加另一行 则会抛出下面的错误 Uncaught error from thread sbt web scheduler 1 shutting down JVM sin
  • Heroku 没有更新 Rails 应用程序的 CSS

    我在 heroku 上更新 Rails 应用程序时遇到问题 我已经启动了我的应用程序 但我尝试更改 public stylesheets 中的 application css 文件 但每当我尝试推送到 heroku 时 CSS 都不会更改
  • 致命:refspec 的远程部分不是 :capability^{} 中的有效名称

    从 github 克隆给定的存储库 然后推送到 bitbucket 上的新存储库 我收到错误 gt fatal remote part of refspec is not a valid name in capabilities gt fa
  • 将 GIT 存储库中的文件标记为暂时忽略

    我们正在从 Perforce 迁移到 GIT 当然 我希望存储库中有一些文件 但个人开发人员不应该定期签入它们 诸如 eclipse 项目文件之类的东西 每个开发人员可能会获得初始的 project 文件 但随后会根据自己的环境稍微调整它
  • 使用 svn 元数据克隆 git-svn 存储库

    我已经克隆了我的主存储库git svn clone svn url trunk stdlayout 现在我想使用 svn 元数据克隆存储库 这样我就能够git svn rebase它到主服务器 注意 我不想在两个之间推送提交git svn克
  • scala 贷款模式,可选函数参数

    我有一个贷款模式 该模式应用函数 n 次 其中 i 是递增变量 偶尔 我希望传入的函数能够访问 i 但我不想要求传入的所有函数都需要定义一个参数来接受 i 下面的例子 def withLoaner n Int gt op Int gt St
  • 如何制作新的Eclipse项目模板?

    我每次创建一个新的 Java 项目时都会使用一种框架 我必须将文件安排在适当的包中并引用适当的外部JAR http en wikipedia org wiki JAR 28file format 29图书馆 如何在新文件夹下的 新建项目 对
  • Eclipse 编辑器打不开

    我的 Eclipse 无法显示编辑器窗口 Error 无法打开编辑器 无法实例化编辑器类 这通常表明缺少无参数构造函数或者 编辑器的类名在plugin xml 中输入错误 Notes 我对 C 和 Python 使用不同的 Eclipse
  • 如何在同一台机器上运行 2 个(或更多)Wildfly 实例?

    我想通过运行 2 个独立的 Wildfly 实例来模拟 2 个服务器 当您不想在同一个实例上部署所有 WAR 然后只能将它们关闭并一起启动时 这非常有用 我正在将 Eclipse 与 JBoss 插件一起使用 在服务器视图中 我希望有 2
  • 当更改提交给子模块时,如何触发詹金斯中的构建?

    我们有一个带有外部子模块的 git 存储库 当子模块更改时 我们必须触发构建 您能否向我们建议如何使用 xtrigger 插件轮询子模块上的更改 使用 shell 脚本或监视文件还是其他更好 有关我们构建过程的更多信息 步骤1 使用子模块克
  • 如何清理 Eclipse“运行配置”

    我在 Eclipse 的 Window gt Prefs gt Java gt Installed JREs gt Default VM Arguments 中设置了 java 运行时选项 由于这个设置足以满足我所有的需求main 入口点
  • 如何编辑 git 中任何提交的提交消息? [复制]

    这个问题在这里已经有答案了 假设我有 3 个未推送的提交 现在我想更改第一次或第二次提交的提交消息 更改第三次提交的提交消息很简单 使用git commit amend 怎么做 回到子问题 是否有一个git commit amend对于先前
  • 禁用 Eclipse 的错误发现。 (Codan 误报)

    到目前为止我的经验是 Eclipse 的错误发现是可怕的错误 没有任何解决方案 尝试过 GXX EXPERIMENTAL CXX0X std c 0x std c 11在设置的每个点附近 我现在不想再寻找解决方案了 现在我只想看到真正的编译
  • Log4j 未使用属性文件找到自定义附加程序

    我正在尝试使用以下 XML 属性文件在 Eclipse 插件项目中配置 log4j 其中包括一个名为 EclipseLoggingAppender 的自定义附加程序
  • 如何在 Scala 中将 DataFrame 模式写入文件

    我有一个 DataFrame 它从一个巨大的 json 文件加载并从中获取架构 该架构基本上大约有 1000 列 我希望将 printSchema 的相同输出保存在文件中而不是控制台中 有任何想法吗 如果您在本地环境中工作 您可以执行以下操
  • 将 Maven 项目从 Git 导入到 Eclipse 中

    如何获得选择从 Maven 和 Git 导入并让 Eclipse 正确生成我的项目的效果 要将我的项目导入 Eclipse 我可以选择 File gt import gt maven 然后导入所有 Maven 项目并可以正常构建 或者我可以
  • 无法卷曲 git 标签

    我想通过命令行卷曲 git 标签 curl O http someurl 但是当我尝试解压文件时它被破坏了 有谁知道问题是什么 You can curl来自 GitHub 等 git 存储库托管服务的 git 标签 因为它有专用压缩包服务

随机推荐

  • 将目录中的图像作为 Tensorflow 数据集加载

    我对 ML 比较陌生 对 TensorfFlow 也非常陌生 我花了很多时间学习 TensorFlow MINST 教程以及https github com tensorflow tensorflow tree master tensorf
  • emacs 中的 Command-T

    emacs 的 vim 中是否有类似 CommandT 的插件 我知道一些插件可以进行基于目录的补全 但是是否有一个插件可以在完整路径上进行匹配 一个例子 bar hello baz test hello foo hello lost ba
  • 多线程Delphi [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我在del
  • 在 Node 本地使用 dynamodb 时“无法从任何提供者加载凭据”

    我正在本地设置 dynamodb 以使用我的 Node 应用程序进行测试 为了设置它 我只是简单地复制了代码here http docs aws amazon com amazondynamodb latest gettingstarted
  • C# 转换 Unicode 字符 [重复]

    这个问题在这里已经有答案了 是否可以将像 u00e8 这样的字符串 通过使用 Streamreader 读取 WebRequestResponse 获得 转换为 unicode char 使用编码尝试了很多事情 但没有任何效果 您可以使用R
  • Asp.Net Core Web 应用程序:使用 IExceptionFilter 与自定义中间件进行全局异常处理

    Asp Net Core 支持两种方法对 Web 应用程序进行全局异常处理 实现 IExceptionFilter 或创建自定义中间件 其中一种相对于另一种有什么优势吗 我看到的大多数参考文献都是关于创建自定义中间件的 ASP NET 核心
  • Java Deprecated Class 使用已弃用的类 -- 我可以关闭编译器警告吗?

    我正在努力弃用一组 Java 类 以便不再使用它们 我不想关闭针对已弃用用法的编译器警告 但我发现如果我的一个已弃用类导入了另一个已弃用类 我也会收到警告 我不想修改我要弃用的代码 但我也不希望针对这些情况发出警告 在这些情况下 有没有办法
  • 如何从 Xcode 9 中打开的多个模拟器退出或关闭单个模拟器?

    我运行多个模拟器 我需要关闭其中一个 我怎样才能做到这一点 因为我尝试像旧版本的 Xcode 中那样关闭它 但无法关闭 选择 Simulator 进入文件菜单 gt 关闭窗口或按 Command W 它将关闭顶部的模拟器 进入 Window
  • 如何使用 NuGet.Core 创建 NuGet 包?

    我想创建一个使用 NuGet 包 NuGet Core 的应用程序 它有一个名为 PackageBuilder 的类 使之成为可能 有可用的示例 教程 文档吗 一个非常简单的例子 创建一个文件夹 其中包含您想要包含在包中的文件 写一些像这样
  • Google 开发者屏幕截图(图形资产)错误图像无效

    尝试上传任何图形 例如屏幕截图 图标 特写图形 但我不断收到来自 Google 的相同错误 而我的图片规格正确 消息是 上传错误 您需要检查您的屏幕截图图像是否有效 或 您需要修复您的特征图形是否有效 有人有同样的错误或有任何线索吗 我什至
  • 如何在表达式中计算后缀和前缀增量运算符? [复制]

    这个问题在这里已经有答案了 include stdafx h include
  • 使用 Sequelize 计算列中分组数据的平均值

    我试图找到具有相同 VenueId 的所有数据的 评级 列的平均值 我可以使用原始代码 但需要在 Sequelize 中对其进行调整 工作原始代码是 SELECT venueId AVG rating AS average FROM rev
  • 查找函数内的特定变量并将它们排序返回

    首先感谢您转发的帮助 我正在使用 Python 并且尝试在 py 文件中搜索以名称 test 开头的所有函数以及包含的所有变量 我搜索的变量的格式如下 var blabla 所以这里我有一个例子 def test 123 init var
  • 我可以获得 C# 应用程序中所有线程的堆栈跟踪吗?

    我正在工作中调试一个大型应用程序中的一个明显的并发问题 该错误仅在运行许多 12 小时后在某些性能较低的计算机上出现 并且我从未在调试器中重现它 正因为如此 我的调试工具基本上仅限于分析日志文件 C 可以轻松获取抛出异常的线程的堆栈跟踪 但
  • MongoDB C# - 获取不存在的元素的 BsonDocument

    所以我有一个 BsonDocument b 假设它有 FirstName LastName Age 您可以通过 b FirstName 等访问它 如果我尝试执行 b asdfasdf 当然不存在 它不会返回 null 而是会导致应用程序出错
  • 避免在查询中重复 SQL 片段?

    我有这个查询 伪代码 SELECT a 1 b 2 c CASE WHEN ISNULL SELECT MONTH GETDATE lt long query 0 0 THEN found ELSE SELECT MONTH GETDATE
  • 超出最大请求长度回发异常

    对于在页面加载时在 gridview 中绑定超过 500 条记录的 ASP 页面 我在单击按钮时遇到以下异常 我的页面没有任何上传控件 它包含一个文本框 按钮和网格视图 有谁知道为什么会发生这种情况 异常描述 Maximum request
  • 当应用程序在后台时,React Native 处理套接字连接的事件吗?

    我正在使用 React Native 开发聊天应用程序WebSocket在活动模式下一切正常 但是当您按下主页按钮以使应用程序处于后台模式时 WebSocketonMessage事件函数没有被触发 好处是WebSocket连接仍处于连接状态
  • 如何在十六进制 NCR 和 UTF-8 代码单元之间进行转换?

    示例 大红圈 表情符号 可以使用 HTML 显示 x1f534 但是 如果我创建一个包含相同表情符号的文本文件 使用 UTF 8 编码保存该文件 然后使用十六进制编辑器检查它 我可以看到表情符号是用这四个字节表示的 F0 9F 94 B4
  • 如何在 sbt、Eclipse 和 github 中初始化新的 Scala 项目

    如何在 sbt Eclipse 和 github 中初始化一个新的 Scala 项目 以便它们一起运行 一个新的 Scala 项目通常需要设置 sbt eclipse 如果您选择的话 和 github 以便它们一起工作 在为此设置投入一些时