首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用sbt和Java 1.8生成能够在Java 1.7上运行的jar文件

使用sbt和Java 1.8生成能够在Java 1.7上运行的jar文件,可以按照以下步骤进行操作:

  1. 确保已经安装了Java 1.8和sbt,并且配置了相应的环境变量。
  2. 在项目根目录下创建一个build.sbt文件,用于配置项目的构建信息。在该文件中,指定Java版本为1.8,同时设置目标兼容性为1.7。示例配置如下:
代码语言:scala
复制
name := "YourProjectName"

version := "1.0"

scalaVersion := "2.12.10"

javacOptions ++= Seq("-source", "1.7", "-target", "1.7")

javacOptions in Test ++= Seq("-source", "1.7", "-target", "1.7")
  1. 在项目根目录下创建一个src/main/scala目录,并将Java源代码文件放置在该目录下。
  2. 打开命令行终端,进入项目根目录。
  3. 执行sbt命令进入sbt的交互模式。
  4. 在sbt交互模式下,输入compile命令编译项目代码。
  5. 编译成功后,输入assembly命令生成可执行的jar文件。sbt-assembly插件会将项目的所有依赖打包到生成的jar文件中。
  6. 在项目根目录的target/scala-2.12目录下可以找到生成的jar文件。

通过以上步骤,你可以使用sbt和Java 1.8生成能够在Java 1.7上运行的jar文件。这样生成的jar文件可以在Java 1.7环境中运行,并且包含了项目的所有依赖。

相关搜索:在MyEclipse的jar文件中使用java类生成XML如何使用java jar访问EMR上的本地文件?在java jre上使用单个jar文件运行groovy未编译脚本如何打包java jar文件以在未安装JRE的Mac上运行?使用Java FX运行在1.7JDK和JRE11上编译的JAva应用程序如何使用jar文件在另一个文件夹中运行java类javac 11可以编译在java 8 JVM上运行的二进制文件/jar文件吗?如何建立一个在所有Mac上都能工作的Java DB连接,使其JAR能够在Windows 10上建立连接?在WAS for Java8中生成和运行war文件时.classpath的重要性在Tomcat上,是否可以将同一java包的类文件拆分成jar文件和class文件夹?如何使用AnnotationProcessor在特定包的java(生成)目录中编写kotlin文件如何使用Java代码获取文件在服务器上的路径?如何使用jvmmodelInferrer在xtext生成的java文件中添加自定义导入语句?在vscode中使用maven和java时,为什么找不到为grpc和protobuf生成的源文件?在使用Java的selenium上运行时,断开的链接(404和500 resposecode)抛出"ok“消息如何在控制台(cmd)打开的情况下启动不可运行的Java文件(.jar)以显示输出,而不使用mvn exec:java之类的命令如何使用.war格式的Camel创建可以在Tomcat中部署和运行的Java DSL servlet?如何使用java程序在elasticsearch集群上执行简单的索引、更新、获取和删除操作java.lang.IllegalAccessError尝试在独立的nashorn.jar文件和16+29 (或更高版本)中使用嵌入式javascript如何使用xargs在带有单引号和双引号的文件名上运行bash -c
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Kafka介绍及安装部署

这个名字实际上对应于消费服务中的一个队列(Queue),在消息传递给消费者之前它被存储在这个队列中。队列消息可以放在内存中也可以是持久的,以保证在消息服务出现故障时仍然能够传递消息。...在发布者和订阅者之间存在时间依赖性。发布者需要建立一个订阅(subscription),以便能够让消费者订阅。订阅者必须保持持续的活动状态以接收消息,除非订阅者建立了持久的订阅。...可以装在任何一台机器上,我这里部署在一台单独的机器上。...生成的包会在kafka-manager/target/universal 下面。生成的包只需要java环境就可以运行了,在以后部署到其他机器上不需要安装sbt进行打包构建了。 ? 6....你也可以在启动时指定配置文件和监听端口: # bin/kafka-manager -Dconfig.file=/path/to/application.conf -Dhttp.port=8080 启动并置于后台运行

1.7K30

Scala学习系列(二)——环境安装配置

2、使用IDEA SBT开发Scala 上面我们通过Idea安装并运行了Scala的程序 我们已经可以在IDEA中开发Scala了!...在左侧面板上,选择Scala,在右侧面板上,选择sbt 点击下一步 将项目命名为“ SbtExampleProject” 确保JDK版本为1.8,sbt版本至少为0.13.13 了解目录结构...(sbt's build definition file) 随后我们进入项目中 新建文件 输入sbt指令 进入后 run 执行项目 五、Scala Java同时运行 sbt是scala专属的...所以如果我们有scala和java代码同时执行的情况时 需要新建一个maven工程 pom文件写法如下: ...然后maven打包 我们在target下边发现 可以通过 java -jar Hello.jar或者 scala Hello.jar 运行 至此我们Scala环境已经安装完成,推荐大家还是通过

3.4K20
  • 008.Kafka集群管理工具CMAK-3.0.0.5源码编译以及安装部署

    # 这说明这个文件有问题 # 我验证了一下,果然sha1值对不上 # 于是我在maven的中央仓库下载了该jar包,https://repo1.maven.org/maven2/org/webjars...(SLS 3.2.10) [error] cp => props.putAll(cp.asMap) ... # 我的环境是JDK1.8,由于官网介绍cmak都是使用JDK11编译的于是我尝试使用...JDK1.8环境中无法运行,于是才有了上一步的源码编译,我想使用JDK1.8编译,使得安装包可以在JDK1.8环境中运行,结果使用JDK1.8编译都编译不过,于是,只好老老实实的使用JDK11来安装cmak...# 1.安装JDK11 # cmak都是使用JDK11版本来编译的,所以使用JDK8是无法运行的 # 所以给cmak单独部署JDK11环境 [admin@bdc01 java]$ ll /usr/java...实际上为JDK1.8 [admin@bdc01 java]$ echo $JAVA_HOME /usr/java/jdk # 2.解压 [admin@bdc01 opt]$ sudo unzip cmak

    1.9K30

    30分钟--Spark快速入门指南

    本教程的具体运行环境如下: CentOS 6.4 Spark 1.6 Hadoop 2.6.0 Java JDK 1.7 Scala 2.10.5 准备工作 运行 Spark 需要 Java JDK...点击查看:解决 sbt 无法下载依赖包的问题 使用 sbt 打包 Scala 程序 为保证 sbt 能正常运行,先执行如下命令检查整个应用程序的文件结构: cd ~/sparkappfind ....SimpleApp的文件结构 接着,我们就可以通过如下代码将整个应用程序打包成 JAR(首次运行同样需要下载依赖包,如果这边遇到网络问题无法成功,也请下载上述安装 sbt 提到的离线依赖包 sbt-0.13.9...SimpleApp的文件结构 生成的 jar 包的位置为 ~/sparkapp/target/scala-2.10/simple-project_2.10-1.0.jar。...通过 spark-submit 运行程序 最后,我们就可以将生成的 jar 包通过 spark-submit 提交到 Spark 中运行了,命令如下: /usr/local/spark/bin/spark-submit

    3.6K90

    sbt的依赖管理逻辑

    sbt 使用 Apache Ivy 作为其依赖管理系统,支持 Maven 和 Ivy 依赖格式。本文将对sbt的依赖管理逻辑进行一些个人观点上概述,水平有限,还请见谅。...在某种程度上,依赖项可以看作是依赖关系的实现,因为它们实际上是项目中需要的外部资源。例如: 以下是一个简单的Java项目,使用 Maven 来管理依赖项。...非托管依赖项是指开发人员手动管理和引入项目所需的依赖项,通常是通过将依赖项的 JAR 文件放置在项目的某个目录下,或者直接引用本地文件路径来实现。...target/: 这个目录是sbt生成的,用于存放编译生成的类文件、打包文件以及其他构建过程中生成的临时文件。...其实总的来说,sbt 的依赖项的使用的这个过程涉及读取配置文件、解析依赖项声明、下载依赖项、解决依赖项冲突等步骤,而这些步骤的唯一目的以确保项目能够正确地获取和管理其所需的外部依赖项。

    17910

    Akka-CQRS(10)- gRPC on SSLTLS 安全连接

    使用gRPC作为云平台和移动前端的连接方式,网络安全应该是必须考虑的一个重点。gRPC是支持ssl/tls安全通讯机制的。用了一个周末来研究具体使用方法,实际上是一个周末的挖坑填坑过程。...仔细研究了一下github上的gRPC-java说明文件SECURITY.MD,感觉应该是grpc和netty版本问题,特别是下面这几个依赖: Find the dependency tree (e.g...好像缺失了io.netty:netty-tcnative-boringssl-static:jar,按照对应的gRPC版本在build.sbt里加上: name := "learn-grpc" version...不过客户端在使用了证书后仍然无法连接到服务端。没办法,又要再去查资料了。看来现在应该是证书的问题了。先看看是不是因为使用的证书是自签的self-signed-certificate。...grpc-java里提供了一些测试用的证书和私钥和说明文档。

    1.3K40

    如何使用IDEA加载已有Spark项目

    背景是这样的:手上有一个学长之前实现的Spark项目,使用到了GraphX,并且用的Scala编写,现在需要再次运行这个项目,但如果直接在IDEA中打开项目,则由于各种错误会导致运行失败,这里就记录一下该如何使用...确定项目的版本环境 这一步是非常重要的,很多情况下就是由于版本的不匹配导致代码解析出现错误,主要的环境版本包括: Java Version 1.8 必须 scala-sdk-x.xx.x spark-assembly-x.x.x-hadoop.x.x.jar...//注意这是在No-sbt模式下必须的,这个包很大,大概170M,导入后不用再添加其他依赖即可对Spark程序进行本地(Local)运行,其已包括GraphX模块。...Java的版本 这里由于要是用Scala所以必须使用 Version 1.8+,关于如何修改版本这里不赘述。...在这里,原项目使用的是 spark-assembly-1.4.1-hadoop2.6.0.jar 但是这个jar包早就不在项目文件中了,然后在网上也没有搜到完全匹配的Jar包,但上文已说到,找个spark

    2K20

    Spark Submit的ClassPath问题

    在我们的Scala项目中,可以直接将要依赖的jar包放在module的lib文件夹下,在使用sbt执行编译和打包任务时,会自动将lib下的jar包放入classpath中。...由于我们使用了sbt assembly,并编写了对应的脚本来支持整个产品的打包工作,最终打包的结果是一个完整的mort.jar包。换言之,我们要依赖的外部Jar包也将被打包到最终的jar文件中。...实际上,sbt assembly并不会将所有依赖的外部包都装配到最终的部署包中,只要在sbt的依赖中添加provided,就能保证第三方依赖包不被包含进部署包中。...该文件仍然不能作为内嵌的资源文件打包到部署包中。因为这个文件的内容需要区分测试环境和生产环境。在部署到生产环境中时,需要替换为另一个key文件。...客户的文档说明,需要将该文件(不是jar文件)放到运行的classpath中。

    4.3K90

    Spring之注解实现aop(面向切面编程)

    ,就叫做切面(类)         面向切面编程,就是指对很多功能都有的重复代码抽取,再在运行的时候往业务方法上动态植入"切面类代码";     1.4:切入点         执行目标对象方法,动态植入切面代码...aspectjrt.jar】 《注意:用到的spring2.5版本的jar本舰,如果用jd1.7版本可能会出现问题,               需要升级以下aspectj组件,即使用aspectj...-1.8.2版本中提供的jar文件aspectjweaver.jar和aspectjrt.jar》            (2)bean.xml中引入aop名称空间 技巧:找到文件spring-framework...3.2:编辑环境:eclipse+tomcat8.0+jdk1.8,为什么说编辑环境呢,因为jdk1.8和spring好像有仇似的,开始我安装的jdk是1.8版本的,总之包很多很多错,主要的caused...,但是总要配置环境变量吧,我就配置jdk1.7之后发现验证的时候还是显示是jdk1.8,我就赶紧思考啊,思考过后我考虑应该把jdk1.7,jdk1.8都卸载了,然后我都卸载了,然后重新安装jdK1.7,

    1K100

    Maven

    其它“远程”仓库可能是你的公司拥有的建立在文件或HTTP服务器上的内部仓库(不是Apache的那个中央仓库, 而是你们公司的私服,你们自己在局域网搭建的maven仓库),用来在开发团队间共享私有构件和管理发布的...用来做jar包的版本控制。 【2】JAR工程 将会打包成jar,用作jar包使用。即常见的本地工程 ---> Java Project。 【3】WAR工程 将会打包成war,发布在服务器上的工程。...通俗理解:就是导jar包。 B工程可以是自己的项目打包后的jar包,也可以是中央仓库的jar包。 【2】如何注入依赖呢?...: tomcat插件 我们如果创建war项目,必然要部署在服务器上,方式: (1)部署在远程服务器上 (2)将IDEA和外部tomcat产生关联,然后将项目部署在外部tomcat上 现在学习一个新的方式...- javac 打包 - jar, 将java代码打包为jar文件 安装到本地仓库 - 将打包的jar文件,保存到本地仓库目录中。

    2.9K40

    Play For Scala 开发指南 - 第4章 第一个Play项目

    发布Play项目 Play项目的发布也是通过sbt命令完成的,进入命令行执行sbt dist,命令执行完成后,在target\universal目录下会生成应用文件play-scala-starter-example...执行sbt stage命令,命令执行完成后,在\target\universal\stage\lib会生成如下两个jar文件: ?...实际上Play项目并不依赖于IDE开发环境,上文中说过,Play项目其实是SBT项目,通过SBT在命令行可以完成Play项目生命周期的整个构建过程。...也就是说你完全可以使用文本工具开发Play项目,然后在命令行进行构建。但是为了提高开发效率,还是建议使用IDEA进行开发,不仅有语法提示上的优势,在Play项目调试时IDEA将发挥很重要的作用。...这是由于模板函数index是在项目编译过程中动态生成的,所以新增的模板函数在IDEA中会提示找不到,这时只要在命令行执行sbt compile,然后在SBT projects窗口单击蓝色刷新按钮,错误即会消失

    2.8K40

    Spark 开发环境搭建

    1 前言 本文是对初始接触 Spark 开发的入门介绍,说明如何搭建一个比较完整的 Spark 开发环境,如何开始应用相关工具,基于如下场景: 使用 hadoop HDFS 存储数据; 使用 Spark...一般而言,使用与系统实现语言相同的 scala 语言进行应用开发,在保障最大化运行时性能的同时(Scala, Java 程序会被编译直接在 JVM 上运行的代码,Python, R 程序运行时存在虚拟机之间的交互...java vm 参数 --- lib/ # 预装 jar 包 5.2 sbt 工程样例 将上面在交互模式下运行的单词计数使用独立的 scala 程序实现。...重要: scalaVersion 必须与当前 spark 使用的 scala 版本一致,否则生成的 jar 包不一定能在 spark 环境中运行,这个版本可以通过查看 $spark_root/jars/...5、编译与打包 sbt package 执行上述命令,完成编译打包,生成 jar 文件,到这里,第一个独立打包的 spark app 已孵出了。

    6.9K21

    Java高编译低运行错误(ConcurrentHashMap.keySet)

    问题 本地使用maven编译和运行时一切都正常,但是通过ci的方式,编译、打包、发布到部署环境,运行时抛出了一条显而易见的JDK版本的错误。...为了进一步验证部署服务器上的class文件都是JDK 8编译的,我使用javap这个JDK自带的工具做了如下的验证: javap -v a.class |grep major 返回的结果是 major...release版本的兼容性的class文件,不过只确保目标VM能够加载class文件,却无法保证运行时的正确性。...小结 在javac指定了这些参数,降低版本号来编译,会导致生成class文件被标识为较低版本以供指定的JVM加载。...在JDK 7上运行时,JVM动态调用的一定是ConcurrentHashMap的keySet():java.util.Set方法了。

    1.5K30

    Jmeter系列之简介与环境安装

    另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证程序是否返回了期望结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。...,便于接口调试; 多平台支持,可在Linux,Windows,Mac上运行; 轻量级,和其他测试工具相比更加灵活性; ?...也可以在微信公众号后台回复"20191004"获取JDK 1.7或JDK 1.8安装包。 ? ? ②下载完,点击默认安装即可。 ? ?...最低jdk1.8;  Jmeter4.0/5.0:最低jdk1.8; ②下载完成后,解压即可使用,解压后的目录如下: ?...:Linux下启动文件; jmeter.log:Jmeter运行日志文件; jmeter.properties:Jmeter配置文件; jmeter-server.bat:windows下启动负载,生成器服务文件

    86740

    Github 项目推荐 | Basel Face Model 2017 完全参数化人脸

    上面的一行图片说明了图像的模型参数是沿着某个参数在等距位置上采样的 - 在这种情况为偏航姿态(the yaw pose),我们将此设置称为“受控”(controlled)。...用法 安装: 已安装Java(建议使用8.0或更高版本) 下载jar和配置文件 下载Basel Face Model 2017 下载Basel Illumination Prior 2017 获取背景数据集...,例如可描述的纹理数据集 运行: 修改data / config_files / example_config_controlled.json中的路径和配置 用于在“受控”设置中生成图像,执行: java...为了在“随机”设置中生成图像,执行: java -Xmx2g -cp generator.jar faces.apps.RandomFaces -c data / config_files / example_config_random.json...对于开发者: 已安装Java(建议使用8.0或更高版本) 安装sbt(仅用于从源代码编译) 克隆库 编译并使用sbt run -mem 2000运行 Github 地址 https://github.com

    3.3K70
    领券