引用自己写的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 命令用法的更多相关文章

  1. Fedora javac 命令提示 [javac: 未找到命令...]

    [joy@localhost ~]$ java -version openjdk version "1.8.0_91" OpenJDK Runtime Environment (b ...

  2. Java知识点:javac命令

    javac命令初窥 注:以下红色标记的参数在下文中有所讲解. 用法: javac <options> <source files> 其中, 可能的选项包括:   -g     ...

  3. javac 命令行使用总结

    先给出参考的两个链接,然后再总结: 内容:使用javac 指定编译多个目录下java文件 链接:http://zhidao.baidu.com/link?url=W5ZERu8_ouGD-L_JH0v ...

  4. javac命令

    javac命令 javac命令初窥 注:以下红色标记的参数在下文中有所讲解. 用法: javac <options> <source files> 其中, 可能的选项包括:   ...

  5. Java文件编译与反编译:javac命令和javap命令

    1.创建一个Test.java文件,并输入内容 public class Test{ private int m; public int inc(){ return m + 1; } } 2.使用ja ...

  6. eclipse中的javac命令与java命令

    一.eclipse的javac命令:当eclipse对.java(源文件)文件进行保存操作时(快捷键ctrl+s),会执行javac命令.见上图,Default output folder(默认输出文 ...

  7. systemctl命令用法详解

    systemctl命令用法详解系统环境:Fedora 16binpath:/bin/systemctlpackage:systemd-units systemctl enable httpd.serv ...

  8. cpio命令用法

    [转自]流浪妖精のSKY    http://www.cnitblog.com/flutist1225/articles/18974.html cpio命令用法 cpio命令     利用cpio 可 ...

  9. JAVAC 命令详解(转)

    本文来自:http://www.cnblogs.com/JeffChen/archive/2008/01/16/1041783.html 结构 javac [ options ] [ sourcefi ...

随机推荐

  1. android sdk启动报错error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037:

    android sdk启动报错error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037: 问题原因: ...

  2. JSON 与JAVA对象之间的转换(转)

    JSON与XML两者目前在数据交互方面都有很高的使用率,随着现在SOA的兴起,异构系统的整合地位相应提高,本篇文章主要介绍JSON与JAVA对象之间的相互转换. 一.对普通类型的JSON模式的转换 一 ...

  3. Linux服务器 scp 不需要密码配置与密钥转换(id_rsa->ppk)

    案例:▲服务器A对服务器B.C进行ssh连接,免输入密码    或▲服务器A向服务器B.C复制文件(源文件在服务器A上),免输入密码 主机A:192.168.0.221主机B:192.168.0.22 ...

  4. iOS在线音乐播放SZKAVPlayer(基于AVPlayer的封装)

    由于最近闲着没事,想找有关在线音乐播放的demo学习一下,在gitHub跟code4APP上面查找了很多帖子,结果很多在线音乐都是基于AudioStream实现的,我感觉用起来不太方便.后来突然发现, ...

  5. java开发--配置ssh

    下面,我查阅了大量资料,走了不少错路,最后总结了经验后搭建出来的SSH框架. 希望第一次搭建SSH框架的会从中得到启发. 开发环境: eclipse-jee-kepler-SR1-win32 4.3. ...

  6. android 使用静态变量传递数据

    使用静态变量传递数据之通用方式. 测试应用:当前页面点击button传递数据到一个新的页面显示在textview中. 首先在,mainActivity.xml文件中加入一个button按钮 <B ...

  7. ie6 js报错unterminated string constant

    原因1:读取js文件时选用的编码不匹配导致该错误. 解决办法: 方法1:修改js的存储编码.可以使用note++打开js文件,再用UTF-8编 码方式保存并取代原来的js文件即可,并且在. <s ...

  8. queue-fun —— nodejs下基于Promise的队列控制模块。

    工作告一段落,闲来无事,写了一个在nodejs实现“半阻塞”的控制程序. 一直以来,nodejs以单线程非阻塞,高并发的特性而闻名.搞这个“半阻塞”是东西,有什么用呢? 场景一: 现在的web应用可有 ...

  9. PHP 练习租房

    练习:租房子 <body> <form action="test.php" method="post"> <div>区域: ...

  10. linux dsp 播放音频文件

    #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <sys/ioc ...