linux - 如何从 linux 机器上的 sbt pack/bin 文件夹执行 scala 项目
问题描述
我是斯卡拉的新手。我已经在 scala 项目中配置了 sbt pack 并执行了命令sbt pack
。它创建新文件夹“/target/pack”并具有 lib 和 bin 文件夹。bin 文件夹包含两个文件。一个是批处理文件。我双击了该文件,它从命令提示符处执行项目。
问题:如何在liunx机器上运行?是否创建此 bin 文件夹以通过简单的单击运行项目?
构建.sbt
enablePlugins(PackPlugin)
name := "FileReadAWS"
version := "0.1"
scalaVersion := "2.11.8"
libraryDependencies += "org.scala-lang" % "scala-library" % scalaVersion.value
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.2.1"
libraryDependencies += "org.apache.spark" %% "spark-sql" % "2.2.1"
libraryDependencies += "org.apache.hadoop" % "hadoop-common" % "2.7.4"
libraryDependencies += "org.apache.hadoop" % "hadoop-client" % "2.7.4"
libraryDependencies += "org.apache.hadoop" % "hadoop-aws" % "2.7.4"
插件.sbt
addSbtPlugin("org.xerial.sbt" % "sbt-pack" % "0.13")
我从命令提示符执行“sbt pack”后创建了波纹管文件
\target\pack\bin\file-reader Type is 'File'
\target\pack\bin\file-reader Type is 'Windows-Batch file' It execute the program when double clicked
\target\pack\lib This folder contains project jar and dependency jar as well
帮我。提前致谢。
解决方案
使用sbt package命令创建的 JAR 文件是一个普通的 Java JAR 文件。您还可以使用 Scala 解释器执行 JAR 文件中的 main 方法:即
$ scala 目标/scala-2.10/.jar
推荐阅读
- ios - SwiftUI 本地化 - 如何使 UI 组件及其功能成为本地化的基础
- html - Python - Beautifulsoup,使用内部标签区分 html 元素内的已解析文本
- haskell - 如何从图像中提取列表。向量问题
- c++ - 显式声明私有类构造函数有意义吗?
- npm - 如果 npm 树中存在两个版本,如何使 electron-forge 和 webpack 加载模块的特定版本?
- python - 解析 GFF 文件抛出 TypeError
- python - 如何限制上传到 ElasticSearch 的数据数量
- c++ - 在具有不同模板参数集的模板类中使用模板化对象
- nanoframework - esp32 cam板串行上的.net Nano框架没有响应
- swiftui - 如何在 SwiftUI 中水平翻转形状?