javac 命令用法
引用自己写的Class
在java中手动编译时,总提示找不到类,调试成功后,特把目录结构与编译成功的命令列出:
样例一:
文件名 |
MessageStore.java |
Hello.java |
源码 |
package test; |
package test; import test.MessageStore; |
路径 |
E:\test |
E:\test |
编译 |
Javac MessageStore.java |
Javac Hello.java –classpath .. |
样例2:
文件名 |
MessageStore.java |
Hello.java |
源码 |
package test; |
package test; import test.MessageStore; |
路径 |
E:\src\test |
E:\src\test |
编译 |
Javac MessageStore.java |
Javac Hello.java –classpath .. |
样例3:
文件名 |
MessageStore.java |
Hello.java |
源码 |
package bf.model; |
package bf.action; import bf.model.MessageStore; |
路径 |
E:\src\bf\model |
E:\src\bf\action |
编译 |
Javac MessageStore.java |
Javac Hello.java –classpath E:\src |
结论:java文件编译后的classpath为不包括包名的路径,如上面E:\src
引用其它Jar包
1,目录结构
E:\test\lib\bson-3.0.4.jar
E:\test\lib\mongodb-driver-3.0.4.jar
E:\test\lib\mongodb-driver-core-3.0.4.jar
E:\test\Quick.java
2,源文件
import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import com.mongodb.Block;
import com.mongodb.client.FindIterable; import static com.mongodb.client.model.Filters.*;
import static com.mongodb.client.model.Sorts.ascending;
import static java.util.Arrays.asList; public class Quick
{ public static void main(String[] args) {
// MongoClientURI connectionString = new MongoClientURI("mongodb://localhost:27017");
MongoClient mongoClient = new MongoClient();
MongoDatabase db = mongoClient.getDatabase("test"); FindIterable<Document> iterable = db.getCollection("restaurants").find(); iterable.forEach(new Block<Document>() {
@Override
public void apply(final Document document) {
System.out.println(document);
}
});
}
}
3,三种编译形式
javac Quick.java -cp E:\test\lib\bson-3.0.4.jar;E:\test\lib\mongodb-driver-core-3.0.4.jar;E:\test\lib\mongodb-driver-3.0.4.jar;
javac -cp E:\test\lib\bson-3.0.4.jar;E:\test\lib\mongodb-driver-core-3.0.4.jar;E:\test\lib\mongodb-driver-3.0.4.jar; Quick.java
javac -Djava.ext.dirs=lib Quick.java
注意:要JDK1.6以上才可以, 1.6以下可以用通配符
4,运行方法
java -cp E:\test\lib\bson-3.0.4.jar;E:\test\lib\mongodb-driver-core-3.0.4.jar;E:\test\lib\mongodb-driver-3.0.4.jar; Quick
常见错误:
1,运行时,带.class后辍
如:java Quick.class
2,运行时 -cp参数位置写错
如:java Quick -cp e:\...
3, 有包名时忘记传包名
如源文件修改为
package com.fb; import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import com.mongodb.Block;
import com.mongodb.client.FindIterable; import static com.mongodb.client.model.Filters.*;
import static com.mongodb.client.model.Sorts.ascending;
import static java.util.Arrays.asList; public class Quick
{ public static void main(String[] args) {
// MongoClientURI connectionString = new MongoClientURI("mongodb://localhost:27017");
MongoClient mongoClient = new MongoClient();
MongoDatabase db = mongoClient.getDatabase("test"); FindIterable<Document> iterable = db.getCollection("restaurants").find(); iterable.forEach(new Block<Document>() {
@Override
public void apply(final Document document) {
System.out.println(document);
}
});
}
}
目录结构相应为:E:\test\com\fb\Quick.java
编译修正为:
cd e:\test
e:\test javac -Djava.ext.dirs=lib E:\test\com\fb\Quick.java
正确的执行方法为:
java -cp E:\test\lib\bson-3.0.4.jar;E:\test\lib\mongodb-driver-core-3.0.4.jar;E:\test\lib\mongodb-driver-3.0.4.jar; com.fb.Quick
4,进入cmd是通过shit + 鼠标右健进入
javac 命令用法的更多相关文章
- Fedora javac 命令提示 [javac: 未找到命令...]
[joy@localhost ~]$ java -version openjdk version "1.8.0_91" OpenJDK Runtime Environment (b ...
- Java知识点:javac命令
javac命令初窥 注:以下红色标记的参数在下文中有所讲解. 用法: javac <options> <source files> 其中, 可能的选项包括: -g ...
- javac 命令行使用总结
先给出参考的两个链接,然后再总结: 内容:使用javac 指定编译多个目录下java文件 链接:http://zhidao.baidu.com/link?url=W5ZERu8_ouGD-L_JH0v ...
- javac命令
javac命令 javac命令初窥 注:以下红色标记的参数在下文中有所讲解. 用法: javac <options> <source files> 其中, 可能的选项包括: ...
- Java文件编译与反编译:javac命令和javap命令
1.创建一个Test.java文件,并输入内容 public class Test{ private int m; public int inc(){ return m + 1; } } 2.使用ja ...
- eclipse中的javac命令与java命令
一.eclipse的javac命令:当eclipse对.java(源文件)文件进行保存操作时(快捷键ctrl+s),会执行javac命令.见上图,Default output folder(默认输出文 ...
- systemctl命令用法详解
systemctl命令用法详解系统环境:Fedora 16binpath:/bin/systemctlpackage:systemd-units systemctl enable httpd.serv ...
- cpio命令用法
[转自]流浪妖精のSKY http://www.cnitblog.com/flutist1225/articles/18974.html cpio命令用法 cpio命令 利用cpio 可 ...
- JAVAC 命令详解(转)
本文来自:http://www.cnblogs.com/JeffChen/archive/2008/01/16/1041783.html 结构 javac [ options ] [ sourcefi ...
随机推荐
- js中的call与apply
看js权威指南里面关于call与apply方法的说明:我们可以将call()与apply()看作是某个对象的方法,通过调用方法的形式来间接调用函数.这样的解释未免使人糊涂啊.下面说一下自己的见解:其实 ...
- C# DES 加密 解密
//注意:密钥必须为8位 private const string m_strEncryptKey = "abcd1234"; /// <summary> /// 加密 ...
- 看完这些,你就算得上既了解围棋又了解alphago了
首先,我们要祝贺小李下出第78手的“神之一手”,这一手堪称前无古人后无来者,尤其是结合了阿尔法狗自暴自弃的表现.小李说过他的失败并不是人类的失败,同样,小李的胜利也只是属于他一人的胜利. 然而人类在围 ...
- Delphi对于控件的SuperClassing(封装并扩展Button,使之变成TButton)
写博客写了这么久,但是一直不知道应该怎么样写函数之间的调用关系和执行顺序,因为不停的跳来跳去的,但是写的时候却只能顺序写调用关系,直到今天发现这种写法很不错: TButton创建窗口是在CreateW ...
- HighCharts开发说明及属性详解
一.HighCharts开发说明: HighCharts 开发实际上配置HighCharts每个部分,比如配置标题(title),副标题(subtitle)等,其中每个部分又有更细的参数配置,比如标题 ...
- Kruskal
算法描述:克鲁斯卡尔算法需要对图的边进行访问,所以克鲁斯卡尔算法的时间复杂度只和边又关系,可以证明其时间复杂度为O(eloge). 算法过程: 1.将图各边按照权值进行排序 2找出权值最小的边,(条件 ...
- jvm 内存整理 -----学习
分为:方法区 ,堆 ,栈 ,本地栈 ,程序计数器 1.程序计数器 保存当前线程执行的字节码行号指示器,解释器工作时,都是通过改变计数器的值来获取下一条程序指令,循环.异常.跳转.分支. ...
- Python得到前面12个月的数据,Python得到现在时间 前一年的数据,
#Python 实现得到现在时间12个月前的每个月 # 假设现在的时间是2016年9月25日 #得到现在的时间 得到now等于2016年9月25日 now = datetime.datetime.no ...
- dataguru试听课程
http://www.dataguru.cn/article-5447-1.html#userconsent#
- PHP包含文件函数include、include_once、require、require_once区别总结
一.使用语法和简介 1.include() 语法:include(/path/to/filename)include()语句将在其被调用的位置处包含一个文件.包含一个文件与在该语句所在位置复制制定文件 ...