如图:H.java里引入了commons-io-2.2.jar

代码如下:

import org.apache.commons.io.IOUtils;
public class H{
public static void main(String[] args){
String[] a = { "/bin/sh", "-c","iptables -nvL --line"};
process1(a);
}
public static void process1(String[] cmdarray) {
try {
final Process p = Runtime.getRuntime().exec(cmdarray);
String info = IOUtils.toString(p.getInputStream());
String error = IOUtils.toString(p.getErrorStream());
System.err.println(info);
} catch (Exception e) {
e.printStackTrace();
}
}
}

编译:

javac -cp ./commons-io-2.2.jar H.java 

运行

[root@localhost javarun]# java -cp $CLASSPATH:commons-io-2.2.jar H
Chain INPUT (policy ACCEPT 2348K packets, 254M bytes)
num pkts bytes target prot opt in out source destination
1 3 152 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080
2 3 152 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:1111 Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 1805K packets, 179M bytes)
num pkts bytes target prot opt in out source destination
1 3 120 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp spt:8080

复制一个网络教程:

1、将外部jar包(javacsv.jar)放在Linux路径下面。
如/home/cys/lib
2、将需要编译的java文件(CsvTest.java)放在Linux路径。如/home/cys/test
3、编译已经写好的java文件,命令如下:
javac -cp /home/cys/lib/javacsv.jar /home/cys/lib/CsvTest.java
生成CsvTest.class文件。
4、运行程序,命令如下:
java -cp $CLASSPATH:/home/cys/lib/javacsv.jar:/home/cys/lib/CsvTest CsvTest

结果运行正确

需要注意的几点是:
1、编译的时候,需要使用-cp环境变量来引入外部jar的地址。-cp也可以换成-classpath。
2、运行过程中,环境变量-cp中一定要加入编译时候生成的class文件的路径。并且用冒号分割。

windows下环境变量是使用引号分割的。但是在Linux下环境变量需要使用冒号分割

Linux下

在Linux下运行引入了外部jar包的java程序的更多相关文章

  1. Linux下运行scala语言的jar包

    1.新建project 2.打包 3.linux下运行jar包 #First.jar为jar包名,Test为主类名 [root@FI-2 Desktop]# spark-submit First.ja ...

  2. java 编译 运行 及 引用外部 jar 包的方法

    1. 环境变量配置 JAVA_HOMEC:\Program Files\Java\jdk1.8.0_121; PATH%PATH%;C:\Java\jdk1.6.0_30\bin; CLASSPATH ...

  3. spring boot:在项目中引入第三方外部jar包集成为本地jar包(spring boot 2.3.2)

    一,为什么要集成外部jar包? 不是所有的第三方库都会上传到mvnrepository, 这时我们如果想集成它的第三方库,则需要直接在项目中集成它们的jar包, 在操作上还是很简单的, 这里用luos ...

  4. java中使用URLClassLoader访问外部jar包的java类

    很多时候 我们写的Java程序是分模块的,有很好的扩展机制,即我们可以为我们自己的java类添加插件,来运行将来某天我们可能开发出来的类,以下称这些类为插件类. 下边是一种简单的实现方法: Class ...

  5. 利用命令行引用外部jar包以使程序正常执行的4种方法

    声明:本博客为原创博客.未经同意.不得转载!原文链接为http://blog.csdn.net/bettarwang/article/details/30976069 平时写一些小的Java Demo ...

  6. (记录)Ubuntu系统中运行需要导入jar包的Java程序

    在学习Redis的过程中,在学到Redis客户端Jedis的时候,考虑到能不能在ubuntu下用Vim编写Java程序并且能够运行呢? 于是,首先在网上调研了一番用Vim写Java程序的可实现性. 相 ...

  7. spring-boot打包,引入外部jar包问题

    这是我引入的外部jar包,打包的时候找不到外部jar包路径 弄了好久 在lib下引入外部jar包,运行没问题,但是打包是出现问题了,具体解决办法 再pom中加入如下配置,告诉maven导入本地jar ...

  8. 将eclipse java程序打包成jar的总结(包括工程中没有引用外部jar包和有引用外部jar包两种情况)

    一.当eclispe java工程中没有引用外部jar包时: 选中工程---->右键,Export...--->Java--->JAR file--->next-->填写 ...

  9. windows下的java项目打jar分别编写在windows与linux下运行的脚本( 本人亲测可用!)

    前言: 最近公司做了一个工具,要将这个工具打包成一个可运行的程序,编写start.bat和start.sh在windows和linux下都可以运行. 在网上找了很多资料,最后终于找到一个可靠的资料,记 ...

随机推荐

  1. 总结一下NDK crash排查步骤

    总结一下NDK crash排查步骤: 先在PC上跑通算法 用Visual Studio写算法的testbed,确保算法能跑通 抓log adb logcat -c; adb logcat > 1 ...

  2. 使用opencv去操作树莓派摄像头保存图片和视频

    利用树莓派的摄像头去学习opencv的基本操作 —— 保存图片和视频 1.使用Opencv去控制树莓派的摄像头拍照并保存到本地,主要使用cv2和numpy库 #!/usr/bin/python3 # ...

  3. ES6中Number中的扩展

    1.Number.parseInt() , Number.parseFloat() 在ES6中将parseInt()和parseFloat()都移植到Number对象上去,方法的行为保持不变. // ...

  4. Unity经典案例之:Fire Balls

    版权声明: 本文原创发布于博客园"优梦创客"的博客空间(网址:http://www.cnblogs.com/raymondking123/)以及微信公众号"优梦创客&qu ...

  5. Centos7-基本设置

    设置hostname hostnamectl set-hostname ABC 查看网络连接 netstat/ss -lntcp 查找软件 rpm -ql python find /tmp/ -nam ...

  6. app安全测试初级

    分析方法:静态分析 主要是利用apktool.dex2jar.jd-gui.smali2dex等静态分析工具对应用进行反编译,并对反编译后的java文件.xml文件等文件进行静态扫描分析,通过关键词搜 ...

  7. 开发Electron可能用到的工具

    nodejs:搭载谷歌v8内核的高性能的node环境npm:包管理工具webpack:模块打包器jQuery:js必备库Bootstrap:css必备库react:用于构建用户界面的库vue:构建数据 ...

  8. 与你一起学习MS Project——基础篇:Project基础应用

    为了更清晰容易地熟悉掌握Project的基础应用,我们在基础篇中一起来学习掌握在Project中如何做进度计划.资源计划.成本计划以及跟踪项目的执行情况并生成所需的项目报表. 一.进度计划 这里,首先 ...

  9. 10.29-10.30Test

    10.29-10.30Test 查看请点个赞 转载请注明出处(~不然~) 题目 描述 做法 \(BSOJ5161\) 从小到大放入\(n\)个数,每次他可以覆盖没被覆盖且小于等于自己的数,求每个数覆盖 ...

  10. 如何抓取微信小程序的源码?

    一.引言: 在工作中我们会想把别人的代码直接拿过来进行参考,当然这个更多的是前端代码的进行获取. 那么微信小程序的代码怎么样获取呢?  参考 https://blog.csdn.net/qq_4113 ...