windows与linux下执行.class(包含main方法)

一般来说,执行一个java文件采用执行jar包的方式最为方便(java -jar XXX.jar),将所需要的文件全部打到一个jar里,但是有些时候需要执行指定的.class文件才行(各种原因),这个时候就需要我们使用 -classpath 参数来指定类路径。

windows:

假设要执行的文件为D:\test\Test.class

1.在cmd下进入D盘

2.执行java test.Test 或者 java test/Test 都可以

3.如果Test中关联了其它jar包,这需要通过如下方式执行,假设jar文件在test\lib下

java -classpath .;lib/* test.Test

说明如下:

注意这里使用了-classpath参数:

"."代表当前路径,这是java执行时的默认路径,所以在执行了classpath后需要手工加上这个路径,否则会提示找不到要执行的类。

";"用来隔开两个路径

"lib/*"表示lib下的所有jar文件,如果只使用某一个jar,可以具体指定,如"lib/XX.jar"

linux:

假设要执行的文件为/usr/local/test/Test.class

1.在shell下进入/usr/local

2.执行方式如下

java -classpath . test.Test

说明:linux下执行.class时,需要指定-classpath,这与linux的环境变量设置方式有关,linux不提倡指定".",而windows在设置CLASS_PATH环境变量时一般都加上这个".",这么说明白了吧

3.如果关联了其它jar文件,执行方式如下

java -classpath .:lib/*

说明:与windows相似,除了分隔符需要使用linux的分隔符":"

总结:

综上所述,建议在执行java命令时加上-classpath参数

原文地址:https://www.cnblogs.com/tan-chao/p/10983068.html

时间: 2024-10-29 19:11:44

windows与linux下执行.class(包含main方法)的相关文章

socket在windows下和linux下的区别

windows到Linux代码移植遇到的问题 1.一些常用函数的移植 http://www.vckbase.com/document/viewdoc/?id=1586 2.网络 ------ 转载 & 修改(待整理) socket相关程序从windows移植到linux下需要注意的 1)头文件 windows下winsock.h/winsock2.h linux下sys/socket.h 错误处理:errno.h 2)初始化 windows下需要用WSAStartup linux下不需要 3)关

Windows 和 Linux下使用socket下载网页页面内容(可设置接收/发送超时)的代码

主要难点在于设置recv()与send()的超时时间,具体要注意的事项,请看代码注释部分,下面是代码: [cpp] view plaincopyprint? #include <stdio.h> #include <sys/types.h> #include <stdlib.h> #include <string.h> #include <errno.h> #include <string.h> #ifdef _WIN32   ///

打通windows和Linux下的传输问题解决只能使用SSH协议下的22端口来传输文件(Openssh for windows)

目的:打通windows和Linux下的传输问题解决只能使用SSH协议下的22端口来传输文件 环境: windows IP192.168.1.120 Linux IP192.168.101 方法: 安装opensshfor windows (次软件开源并增加ssh协议将windows模拟成Unix环境) 安装完软件导入本地用户或者域用户 进入到bin目录下面执行 cd "c:\Program Files(x86)\OpenSSH\bin" mkgroup -l >>..\e

windows和linux下如何远程获取操作系统版本和主机名

远程获取windows和linux操作系统版本和主机名需要具备以下条件: 假设 主机A(windows 7),ip:192.168.12.2 主机B(centos 6.3),ip:192.168.12.3 主机C(windows 2008)-为远程要获取信息的主机,ip:192.168.12.4 主机D(centos 6.3)-为远程要获取信息的主机,ip:192.168.12.5 windows: 1.主机A可以ping通主机C: 2.主机B可以ping通主机C: 3.主机B可以通过161端口

怎样在Windows和Linux下写相同的代码

目前,Linux在国内受到了越来越多的业内人士和用户的青睐.相信在不久的将来,在国内为Linux开发 的应用软件将会有很大的增加(这不,金山正在招兵买马移植WPS呢).由于未来将会是Windows和Linux两强鼎立的格局,怎样能够使得开发的软件保持最大的可移植性就成了一个很重要的问题.小弟经过一段时间的摸索,找到了这个问题的圆满解答. 在Linux下,所有的开发工具和库都属于自由软件,可以免费获得并且功能强大.如果这些工具和库都有相应的Windows版,那么我们就能够在Windows和Linu

windows和linux下结束循环的操作

#include <iostream> #include <string> #include <sstream> using namespace std; int main() { string word; string line; while (getline(cin,line)) { istringstream istr(line); while(istr>>word) cout<<word<<"#"; cou

转载:Linux下执行SVN命令时提示错误:Valid UTF-8 data

在Linux下执行svn add *时出现如下错误: svn:  Valid UTF-8  data(hex: 4b)followed by invalid UTF-8 sequence(hex:  fc 63 68  65) 出现这个错误是因为svn库里有文件的名字不是utf-8编码的,这种情况对于中文来说很常见.比如在自己的windows上建了一个中文名字的文件,就会使这种情况. 几经周折,才找到解决办法: 首先,执行命令: ls * | file -/dev/stdin:  ISO-885

windows及linux下安装django simple captcha 遇到的各种问题及解决办法

转载自http://www.cnblogs.com/descusr/p/3225874.html 所有程序写完之后,验证码图片不显示,点击图片地址会提示如下错误,并且在linux下的纠正办法 用pil产生验证码出现:ImportError: The _imagingft C module is not installed 这个是由于PIL没有编译freetype导致的 查看 lib/python2.7/site-packages/PIL/ 看看 _imagingft.so 是否存在(至关重要,因

在windows和linux下分别部署Solr服务

一.在windows下部署Solr服务 1.windows部署solr前的准备: jdk1.7+tomcat-7+solr-4.10.4 1.1.安装JDK就不说了 1.2.安装tomcat 下载下来直接解压到指定目录,我直接解压到D盘下了. 1.3.安装solr(重点) 1.3.1.首先下载solr 下载地址:http://apache.fayea.com/lucene/solr/4.10.4/solr-4.10.4.zip 1.3.2.解压到指定的目录,这个目录自己指定. 1.3.3.进入目