运转java 打包 怎样用命令行编译 (运转手之恋)
本文目录导航:
怎样用命令行编译,打包,运转java
一、编译:从生成(1)eclipse编译:在菜单栏里选用名目→构建/智能构建,就会在workspace的名目里的bin目录下智能生成文件,不须要手动一个个去编译。
(2)命令行编译:进入src目录,间接javac com/csdn/javacode/,留意这里必定要写全门路com/csdn/javacode(这里必定是/号而非.号),并且文件必定要有后缀名!这样生成的文件和src在同一目录下,就是在哪个目录下手动一个个编译,生成的文件就在哪个目录下。
---------------------------------------------二、运转:从生成 命令行运转:cd进入bin目录(eclipse构建生成的普通都在bin目录下),间接java (运转,输入到文件里)-----留意文件在命令行里不要带后缀名!并且门路要写全,口头时,包名加门路时,必定是点号.而非/号!!!------------------------------------------------------------三、打包jar:把零散的文件打包为jar:(不是在eclipse里导出为jar包)cd进入要打成jar包的class文件所在目录:jar cvf [生成jar的称号] [列出class文件] //若有多个用空格隔开例1:操作零散的单个或几个class文件:cd binjar cvf com/cn/lbs/ com/cn/lbs/之后会在bin目录下生成,不过这里jar上方没有包,由于之前没有创立目录例2:把一个文件夹上方一切的class文件打成jar包(这里让生成的jar目录下有包,于是在总的文件夹ipaddress下新建文件夹嵌套com\csdn\ipaddress\,外面放上须要打包的文件)cd回到总的文件夹ipaddress,jar cvf * 回车
如何用javac 和java 编译运转整个Java工程
前言 本文教你怎样用javac和java命令 以及如何应用脚本(shell或bat)繁难解决 并用繁难的实例展现这些用法
IDE是把双刃剑 它可以什么都帮你做了 你只需敲几行代码 点几下鼠标 程序就跑起来了 用起来相当繁难 你不用去关心它前面做了些什么 口头了哪些命令 基于什么原理 但是也是这种过火的依赖往往让人消散了最基本的技艺 当到了一个没有IDE的中央 你便感觉无从下手 给你个代码都不知道怎样去跑 好比给你瓶水 你不知道怎样关上去喝 而后活活给渴死
之前用惯了Myeclipse Java文件编译运转的命令基本忘得一干二净 如今名目出了原型 放到主机下来测试 SSH一登陆上主机就傻眼了 都是命令行 以前程序图标什么的都成了浮云 程序放下来了不知道怎样去编译运转 只能补补课了 上方做下补课笔记
一 javac命令javac 用于编译Java文件 格局为 java [options] [sourcefiles] [@files]其中 options 命令行选项 sourcefiles 一个或多个要编译的源文件 @files 一个或多个对源文件启动列表的文件 有时刻要编译的文件很多 一个个敲命令会显得很长 也不繁难修正 可以把要编译的源文件列在文件中 在文件名前加@ 这样就可以对多个文件启动编译 对编译一个工程很有用 繁难 省事
有几个比拟关键的选项 d 用于指定编译成的class文件的寄存位置 缺省状况下不指定class文件的寄存目录 编译的class文件将和源文件在同一目录下 classpath 可以简写成 cp 用于搜查编译所需的class文件 指出编译所用到的class文件的位置 如jar zip或许其余蕴含class文件的目录 指定该选项会笼罩CLASSPATH的设定 sourcepath用于搜查编译所需的源文件(即java文件) 指定要搜查的源文件的位置 如jar zip或其余蕴含java文件的目录 须要留意windows下和linux下文件门路分隔符和文件列表(即 classpath和 sourcepath指定的文件)分隔符的区别 windows下文件门路分隔符用 \ 文件列表分隔符用分号 linux下文件门路分隔符用 / 文件列表分隔符用冒号 二 java命令java 用于口头程序 格局如下 java [options] classfile options 命令行选项 普通用于 classpath 指定要口头的文件所在的位置以及须要用到的类门路 包括jar zip和class文件目录 会笼罩CLASSPATH的设定三 脚本假设要敲的命令很长 每无所谓编译运转的时刻都要从新敲一遍 这是一件很痛苦的事件 所以用脚本可以大慷慨便你的上班量 在linux下用shell脚本 windows下用bat批解决程序 由于是在linux下 我这里只是繁难引见一下shell 对于bat批解决程序的语法自己网络一下 不难
扫尾linux有很多不同的shell 理论经常使用bash(bourne again shell) 程序必定以上方的行开局 #!/bin/sh #!用来通知系统用前面的参数来口头程序 这里经常使用的是/bin/sh要使你的脚天性够口头 还必定让这个文件有可口头权限 经常使用上方命令更改文件权限 chmod +x filename 注释以#开局的句子示意注释 不时到这行完结 多写注释无利于以后从新看的时刻知道自己在做什么 变量shell的脚本的变量都是字符串 不用声明类型 定义的时刻间接 变量=值 即可 用到变量的的时刻用 $变量 或许 ${变量} echo命令用于打印 举个例子 #!/bin/sh # 定义变量words 值为hello world words= hello world # 打印变量words的值echo $words 命令shell脚本外面可以间接恣意经常使用linux命令 要用到什么命令间接敲出来即可 记住一些罕用的命令 cd 关上目录ls l 显示目录消息rm fr 递归删除目录及上方的文件 不揭示消息mkdir 创立目录pwd 显示以后门路kill pid 强迫杀掉某个进程号的进程pkill 杀掉某个名字的进程ps aux 显示运转进程消息netstat pan 检查网络端口监听状况四 例子上方是文件pile 用于编译整个java工程 把编译的文件放到指定目录下
view plain #!/bin/sh # Define some constants ONSSERVER=ONSServer PROJECT_PATH=/root/iot oid JAR_PATH=$PROJECT_PATH/lib BIN_PATH=$PROJECT_PATH/bin SRC_PATH=$PROJECT_PATH/src/$ONSSERVER
# First remove the sources list file if it exists and then create the sources file of the project rm f $SRC_PATH/sources find $SRC_PATH/ name * java > $SRC_PATH/sources list
# First remove the ONSServer directory if it exists and then create the bin directory of ONSServer rm rf $BIN_PATH/$ONSSERVER mkdir $BIN_PATH/$ONSSERVER
# Compile the project javac d $BIN_PATH/$ONSSERVER classpath $JAR_PATH/jdom jar $JAR_PATH/oro jar @$SRC_PATH/sources list上方是文件run 用于口头程序 view plain #!/bin/sh
# Define some constants ONSSERVER=ONSServer PROJECT_PATH=/root/iot oid JAR_PATH=$PROJECT_PATH/lib BIN_PATH=$PROJECT_PATH/bin
lishixinzhi/Article/program/Java/hx//javac编译器简介
Javac是Java言语编程编译器的外围组件,它的关键义务是解决由Java言语编写的类和接口定义,将这些源代码转换为可口头的字节码文件,也就是咱们熟知的文件。
它在编译环节中,不只会编译用户在命令行间接指定的源文件,还能够隐式地解决其余未明白提及的源文件,确保整个名目标编译完整性。
经常使用javac时,有两种模式来指定源代码文件。
假设你的源文件数量较少,可以间接在命令行中列出文件名,例如:`javac 文件 文件`。
但是,当文件数量泛滥时,为了繁难治理,可以将文件名列在一个文本文件中,每行一个文件名,或许用空格或回车分隔。
这时,你须要在javac命令行中经常使用`@`符号来援用这个列表文件,例如:`javac `,这样javac会智能读取并编译列表中的一切源文件。
总之,javac是Java开发环节中无法或缺的工具,它的高效编译才干使得开发人员能够更专一于代码的成功,而不用担忧繁琐的编译细节。