zoukankan      html  css  js  c++  java
  • jdk的java和javac命令

      jdk的java命令有些参数之前一直是模糊的,今天弄清晰了,记录一下!

      首先说一下classpath 这个不但包含要依赖的包,而且还包含自己写了的类以及main类

      window: 

        -classpath <目录和 zip/jar 文件的类搜索路径>
                      用 ; 分隔的目录, JAR 档案
                      和 ZIP 档案列表, 用于搜索类文件。

      linux:

        -classpath <目录和 zip/jar 文件的类搜索路径>
                      用 : 分隔的目录, JAR 档案
                      和 ZIP 档案列表, 用于搜索类文件。

    比如一个很常见的jdbc驱动测试(oracle),要依赖一个oracle驱动包              

     1 import java.sql.Connection;
     2 import java.sql.DriverManager;
     3 import java.sql.PreparedStatement;
     4 import java.sql.ResultSet;
     5 import java.sql.SQLException;
     6 
     7 public class OracleTest {
     8 
     9     private static String driver = "oracle.jdbc.driver.OracleDriver";
    10     private static String url = "jdbc:oracle:thin:@//192.168.1.20:1521/orcl2";
    11     private static String username = "satp";
    12     private static String password = "satp";
    13 
    14     private void query(String sql) {
    15         try {
    16             Class.forName(driver);
    17             Connection conn = DriverManager.getConnection(url, username, password);
    18             PreparedStatement pstmt = conn.prepareStatement(sql);
    19             ResultSet rs = pstmt.executeQuery();
    20             while (rs.next()) {
    21                 int name = rs.getInt(1);
    22                 System.out.println(name);
    23             }
    24             rs.close();
    25             pstmt.close();
    26         } catch (ClassNotFoundException e) {
    27             e.printStackTrace();
    28         } catch (SQLException e) {
    29             e.printStackTrace();
    30         }
    31     }
    32     
    33     public static void main(String[] args) throws SQLException {
    34         OracleTest t = new OracleTest();
    35         t.query("select 1  from dual");
    36     }
    37 }

    window10下测试:

    1.javac编译

    E:jtest>ls
    OracleTest.java ojdbc14-10.2.0.4.0.jar

    E:jtest> javac -cp .ojdbc14-10.2.0.4.0.jar OracleTest.java

    2.java执行

    ### 第一次失败  没有将当前目录添加到cp里
    E:jtest> java -cp .ojdbc14-10.2.0.4.0.jar OracleTest 错误: 找不到或无法加载主类 OracleTest
    ###第二次成功 E:jtest
    > java -cp .;.ojdbc14-10.2.0.4.0.jar OracleTest 1

    带包编译测试

    OracleTest.java添加上package oo;
    ###
    jtest
    --|ojdbc14-10.2.0.4.0.jar
    --|oo
      --|OracleTest.java

    E:jtest>ls ojdbc14-10.2.0.4.0.jar oo E:jtest>cd oo E:jtestoo>ls OracleTest.java E:jtestoo>cd .. E:jtest> javac -cp .ojdbc14-10.2.0.4.0.jar ooOracleTest.java E:jtest> java -cp .;.ojdbc14-10.2.0.4.0.jar oo.OracleTest 1
  • 相关阅读:
    关于SpringBoot的外部化配置使用记录
    深入理解Mybatis插件
    MySQL JDBC Driver 8.0+设置服务器时区
    重新认识Java注解
    深入理解Java枚举
    Spring cloud系列教程第十篇- Spring cloud整合Eureka总结篇
    Spring Cloud系列教程第九篇-Eureka自我保护机制
    安装vsftp服务器的时候遇到的问题
    spring cloud系列教程第八篇-修改服务名称及获取注册中心注册者的信息
    idea 启动命令行的时候提示不能创建PTY
  • 原文地址:https://www.cnblogs.com/luyang08/p/11164223.html
Copyright © 2011-2022 走看看