【linux】linux编译执行java工程
2015-08-18 15:09
603 查看
一,java环境在linux上的安装
wget http://10.100.51.30:8080/software/jdk-7u71-linux-x64.rpm rpm -ivh jdk-7u71-linux-x64.rpm
安装好后试试 java -v
如果有打印出jdk的版本号,代表安装成功
二 maven在linux上的安装
AC=`ls /opt/maven|wc -l` if [[ $AC -eq 0 ]];then cd /opt wget -q http://10.100.51.30:8080/software/apache-maven-3.3.3-bin.tar.gz tar -xf apache-maven-3.3.3-bin.tar.gz rm -rf maven mv apache-maven-3.3.3 maven rm -f apache-maven-3.3.3-bin.tar.gz AC=`grep /opt/maven/bin /etc/profile|wc -l` echo AC=$AC if [[ $AC -eq 0 ]]; then echo export MAVEN_HOME=/opt/maven>>/etc/profile echo export PATH=\$PATH:/opt/maven/bin>>/etc/profile fi source /etc/profile fi
安装好后,试试mvn -v,如果打印不成功。试试关闭这个连接,重新开个连接 mvn -v,再不行,cd /opt,看看其中是否有maven目录。
三 简单java项目在linux上的编译
将写好的*.java文件上传到linux上。使用sftp工具,put *.java -》上传文件,put -r com -》上传目录。然后进入该java文件目录下,
编译命令 javac test.java
执行命名 java test
结果会输出到屏幕或者写文件到目录下。
四 有依赖其他jar包的java工程的编译执行
如果该工程是一个maven项目。则可基于maven在linux上编译执行。maven中的pom.xml中写了该工程依赖的jar包。它会自动下载所需jar包启动编译。
在pom.xml目录下
mvn compile 进行编译
mvn test 进行执行
mvn package 打包
这样在工程目录下得到一个target目录。其中含该文件的jar包,名为burying.jar,内有工程中所有的class
然后,写一个sh文件。
大概需求是要生成命令
java -cp /home/test/1.jar:/home/test/2.jar:/home/com/burying.jar com.java.BPCS
以上,-cp后面指定了lib中所有依赖的jar包,最后追加的是该工程所含class的jar包,然后是该工程的主函数类名
如上方法,需要将本工程用到的jar文件都收集,从本机上传到服务器,再在服务里上遍历,加入命令中。麻烦琐碎容易出错。
有更好的方法,是基于assembly。
工程是基于maven建立的,maven中管理了所有可用的jar包。则在pom.xml中,dependency下,追加如下几行
<build> <finalName>BPCS</finalName> <defaultGoal>assembly:assembly</defaultGoal> <plugins> <plugin> <artifactId>maven-compiler-plugin </artifactId> <configuration> <source>1.6</source> <target>1.6</target> <encoding>utf-8</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-eclipse-plugin</artifactId> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass></mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
然后在linux上mvn package。则在工程target下面得到一个集成所有依赖包的jar,名为all-withdependency.jar
运行命令 java -cp all-withdependency.jar com.main.BPCS 可得到结果。(此处注意是java -cp (依赖包) 主类名(主类名一定要写全路径)
相关文章推荐
- linux下查看最消耗CPU、内存的进程
- linux下查看最消耗CPU、内存的进程
- Linux环境thinkphp配置以及数据源驱动修改
- Linux安装vmtools
- Centos 安装gitlab
- Linux中LVS-NAT模型解析
- 理解Linux系统中的load average(图文版)
- eclipse远程调试搭载在Linux上的Hadoop的步骤
- Linux JDK的安装与删除
- CentOS系统基于网络的PXE+Kickstart无人值守批量安装操作系统(一)
- 通过Minimal版的iso安装CentOS7之后升级Desktop
- linux caffe 64bit
- WANem的使用方法,linux和windows的操作说明
- linux awk命令详解
- linux新建用户和用户组
- linux 监控网卡流量
- Linux下添加FTP账号和服务器、增加密码和用户,更改FTP目录
- linux 加固措施
- Linux操作系统修改PATH的方法
- pscp实现Windows 和Linux 文件互相传输