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

在执行.jar文件时,`scala`不需要-jar,而`java`需要?

在执行.jar文件时,scala不需要使用-jar参数,而java需要使用-jar参数的原因是:

  1. scala是一种编程语言,它运行在Java虚拟机(JVM)上。Scala代码在编译时会被编译成Java字节码,然后在JVM上执行。因此,执行Scala程序时,只需要使用java命令来启动JVM,并指定Scala编译后的字节码文件即可,不需要使用-jar参数。
  2. java是一种编程语言,也运行在Java虚拟机(JVM)上。Java程序在编译时会被编译成Java字节码,然后在JVM上执行。当执行一个.jar文件时,-jar参数告诉JVM,要从该.jar文件中寻找并执行包含main方法的类。这是因为.jar文件是一种特殊的压缩文件格式,其中包含了Java字节码文件和其他资源文件。使用-jar参数可以方便地指定要执行的程序入口。

综上所述,执行.jar文件时,scala不需要使用-jar参数,而java需要使用-jar参数。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

JDBC的配置(包括db.properties等)

3.1数据库URL 在连接数据库时必须使用各种与数据库类型相关的参数,比如主机名、端口号和数据库名。JDBC使用了一种与普通URL相类似的语法来描述数据源。 e.g. 常用数据库URL Derby: jdbc:derby://localhost:1527/COREJAVA;create=true PostgreSQL: jdbc:postgresql:COREJAVA MySQL: jdbc:mysql://host:port/database Oracle: jdbc:oracle:thin:@host:port:databse JDBC URL的语法一般为: jdbc:subprotocol:other stuff subprotocol用于指明连接到数据库的特定驱动程序。 other stuff参数的格式随所使用的subprotocol不同而不同。 3.2 驱动程序JAR文件 在运行访问数据库的程序时,需要将驱动程序的JAR文件包括到类路径中(编译时并不需要整个JAR文件) 从命令行启动时,只需要使用下面的命令 java -classpath .;driverJar ProgramName 通过;分号,将当前路径(由 . 字符标示的路径)与驱动程序的JAR文件分隔开。 3.3 启动数据库 数据库服务器在连接之前需要先启动 Derby数据库的启动步骤 (1)打开命令shell(linux)或cmd(windows)窗口C:\"Program Files"\Sun\JavaDB\lib (2)找到derbyrun.jar,一般在JavaDB中(C:\Program Files\Sun\JavaDB\lib) (3)启动服务 : java -jar derbyrun.jar server start (4)配置文件db.properties ij.driver=org.apache.derby.jdbc.ClientDriver ij.protocol=jdbc:derby://localhost:1527/ ij.database=DBNAME;create=true 注意 : 只有配置文件名和database可以使用任意名 (5)在另一个shell/cmd窗口中运行Derby的交互式脚本执行工具 : java -jar derbyrun.jar ij -p db.properties 注意 : 打开交互式执行脚本工具之后,会在derbyrun.jar所在目录下创建以配置文件中ij.database的值命名的文件夹。 (6)在打开的窗口中可以输入SQL语句,以;分号结尾。 (7)退出编辑器EXIT; (8)关闭服务器 : java -jar derbyrun.jar server shutdown 3.4 注册驱动器类 情况一:某些JDBC的JAR文件将自动注册驱动器类(Java Standard Edition Service Provider),包含META-INF/services/java.sql.Driver文件的JAR文件可以自动注册。 e.g.Derby中lib目录下JAR包derby.jar中包含java.sql.Driver文件。该文件中"org.apache.derby.jdbc.AutoloadedDriver"为Derby的JDBC驱动程序实现名字。 情况二:如果驱动程序JAR不支持自动注册,需要找出数据库提供商使用的JDBC驱动器的名字。 典型的名字如下: Oracle:oracle.jdbc.driver.OracleDriver SQLServer:com.microsoft.jdbc.sqlserver.SQLServerDriver MySQL:org.gjt.mm.mysql.Driver 或com.mysql.jdbc.Driver 注:这里实际上都是调用的com.mysql.jdbc.Driver,下面为org.gjt.mm.mysql.Driver源码

01

Spark 整体介绍

Spark 是一个大数据运算框架,使用了DAG调度程序,比基于Hadoop MapReduce 运行速度提高了100倍以上     Spark 是一个通用框架,对于不同的运行场景都提供了对于的解决方案:         基于流式运算的 Spark Streaming框架         基于SQL 语法的 Spark SQL框架         基于图运算的 GraphX 框架         基于人工智能与机器学习的 MLlib 框架     Spark 可运行在 Yarn 框架上,还可以运行在独立的集群,Mesos,kubernetes 等集群上面,访问HDFS,HBase,Hive等上百种数据源     Spark 支持 Scala,Java,Python及R语言的快速编写     Spark 角色分为 HMaster,Worker俩种角色,Spark 启动命令为 Spark-Submit(简称Driver),      Spark 运算框架可以不基于Hadoop 框架进行数据运行,所以在配置conf文件时,不涉及 Hadoop 相关东西,在运算时,         如果数据存储或者需要写入到HDFS时,需要指定数据读取/写入命令         如果只是Local模式运行(调试模式),可以不基于HDFS     提示:[集群在运行过程中,涉及SSH访问,所以集群配置时一定需要免密登陆方可执行]     Spark 集群安装                 1. 配置文件修改             spart-env.xml    配置HMaster IP,端口             slave.sh 配置workers ip地址         2. 启动Spark集群             start-all.sh     Spark 高可用安装         可以采用,也可以不采用,根据自身条件而定         1. 安装Zookeeper 集群及配置Zookper集群,修改HMaster IP端口为Zookeeper 地址,并且启动             spart-env.xml         2. 启动Spark 集群             start-all.sh         3. 配置HMaster StandBy 进程 并且启动             hmaster-start.sh     提交Spark Sample任务         1.spart-submit classpath jarpath      Spark任务执行流程         Spark任务执行流程与Yarn任务执行流程类型         1. 首先客户端编写配置Configuration信息,打包Jar包,发起任务到HMaster         2. HMaster根据用户下发的任务信息,配置Worker个数及Worker对应的内存及CPU等,并且启动Worker;         3. Worker根据HMaster下发参数信息,并且与Client交互,获取对应的jar包等信息,然后启动Executor行数据处理(一个Worker下可以包含多个Executor)         4. 输出保存数据。     Yarn与Spark的对比         Yarn    ResourceManager   DataManager   YarnChild    (Job/Client)/ApplicationMastor                 Spark   HMaster           Worker        Executor    SparkSubmit     SparkShell 执行         SparkShell 可以理解为Spark的交互式编程窗口,在启动SparkShell那一瞬间,Spark任务已经启动,每个Work已经分配内存及CPU,等待执行任务,一般不采用SparkShell执行任务,不推荐。     Scala编写Spark                                     Spark对Scala的支持最好,Spark是用Scala语言开发的,所以Spark中包含了很多Scala特有的语法,这一点是其他语言所不能比拟的,所以编写Spark任务推荐使用Scala。         Spark 任务入口为SparkContext,首选需要创建SparkContent,然后就可以按照Spark任务执行流程进行编写,指定MapTask执行操作,ReduceTask执行操作,数据输入,数据输出等。

01
领券