zoukankan      html  css  js  c++  java
  • 在dos中编译java文件

    首先Dos中 编译java文件是:javac (所有)类名.java 运行java文件是:java 包名.类名

    java指令默认在寻找class文件的地址是通过CLASSPATH环境变量中指定的目录中寻找的。

    java执行class文件是根据CLASSPATH指定的地方来找。如果希望它查询当前目录,需要在CLASSPATH中加入“.;”,

    代表当前目录。若classpath中没有此class文件的路径就不能执行(比如将class文件随意移动后)就不能执行。

    java执行class文件对package的路径是强依赖的。它在执行的时候会严格以当前用户路径为基础,

    再按照package指定的包路径转化为文件路径去搜索class文件。

    若移动了java文件(class文件),则可以到Classpath中暂时新建一个路径(文件所放位置),再到Dos中编译执行

    第一种编译方法( 编译直接生成class 文件,执行需先创建包的路径)

    同一个包里有多个java文件,比如pim包里有 Date.java PIMAppointment.java  PIMContact.java

     PIMEntity.java  PIMNote.java   PIMTodo.java 这7个java文件

    1. 且PIMManager.java 调用了其他6个java文件中的类,则在DOS窗口编译时必须同时编译用到的所有类所属的java文件,  
    2. 编译完成后要运行java程序:<span style="color:#ff0000;">切记Dos中为 java 包名.类名     只用到第一个执行程序的类名
    3. 当有包路径时(本例为pim)因此,我们需要返回到包名的上一个目录中Hw2中来执行 java pim.PIMManaget
    4. 当没有包路径时,我们在pim包里创建一个文件夹,命名为(路径名,若有多层路径则要创建多个文件夹)pim再将生成的class文件移进去,
    5. 则我们在Hw2pim目录下就有7个java文件和一个文件夹(叫做pim),文件夹中有class文件,那么我们就可以在  
    6.  执行 java pim.PIMManager

    7. 即从用户路径+包路径去查找class文件

    1. 第二种编译方法( 编译直接生成包的路径)  
    2.   
    3. 假设当前目录为/src/java/ ,则编译命令为:  
    4.   
    5. javac -d . HelloWorld.java  
    6.   
    7. 说明:"." 为指定编译路径为当前目录;生成的HelloWorld.class 所有目录为/src/java/a/b/HelloWorld.class 。  
    8.   
    9. javac -d c/d HelloWorld.java  
    10.   
    11. 说明:c/d 为指定编译路径为/src/java/c/d ,同样也可以写成绝对路径如javac -d d:/ HelloWorld.java ,  
      1. 前提是路径必须先存在;生成的HelloWorld.class 所有目录为/src/java/c/d/a/b /HelloWorld.class 。  
      2.   
      3. 假设当前目录为/src/ ,则编译命令为:  
      4.   
      5. javac -d . java/HelloWorld.java  
      6.   
      7. 说明:生成的HelloWorld.class 所有目录为/src/a/b/HelloWorld.class 。  
      8.   
      9. javac -d java/c/d java/HelloWorld.java   
      10.   
      11. 说明:生成的HelloWorld.class 所有目录为/src/java/a/b/HelloWorld.class 。  
      12.   
      13. 第三种编译方法(先把源文件按照包结构放到指定的目录中,然后执行编译命令)  
      14.   
      15. 假设当前目录为/src/java/,先在目录中创建目录/a/b,然后编译命令:  
      16.   
      17. javac a/b/HelloWorld.java  
      18.   
      19. 下面总结一下对于带包的类进行编译和执行时的一些要点:  
      20.   
      21. 1、编译时可以不考虑包结构的问题,不论用哪种方法,其实本质都是一样的,只需要让javac命令找到所需要编译的原文件(*.java)即可。  
  • 相关阅读:
    lintcode69- Binary Tree Level Order Traversal- easy
    lintcode378- Convert Binary Search Tree to Doubly Linked Lis- medium
    lintcode448- Inorder Successor in Binary Search Tree- medium
    lintcode94- Binary Tree Maximum Path Sum- medium
    lintcode475- Binary Tree Maximum Path Sum II- medium
    *lintcode246- Binary Tree Path Sum II- easy
    lintcode376- Binary Tree Path Sum- easy
    lintcode619- Binary Tree Longest Consecutive Sequence III- medium
    lintcode614- Binary Tree Longest Consecutive Sequence II- medium
    gstreamer在Ubuntu下构建开发环境 分类: ffmpeg-SDL-VLC-Live555 2015-04-07 17:56 324人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/Demonfeatuing/p/8920847.html
Copyright © 2011-2022 走看看