• 手工编译、运行JavaSE项目,且此项目需要第三方jar包支持,且文件中有打包。 分类: java 20100327 10:37 1057人阅读 评论(0) 收藏


    1:先说说第三方jar问题。

    在命令行窗口下,如果编译没有问题的话,那么运行时就会报告程序中用第三方类缺失。

    此时按照如下方法即可解决:

    先查询CLASSPATH值,值为:

    CLASSPATH=.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/jre/lib/rt.jar

    那么将所需的三个jar包添加到物理路径%JAVA_HOME%/lib下,然后修改CLASSPATH值,修改后的值为:

    CLASSPATH=.;%JAVA_HOME%/lib/msbase.jar;%JAVA_HOME%/lib/mssqlserver.jar;%JAVA_HOME%/lib/msutil.jar;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/jre/lib/rt.jar


    2:打包问题

    假设两个文件:
        D:/workspace/com/A.java
        D:/workspace/com/B.java
    两个文件都有:
        package com;
     
    如何编译运行?
      
    进入D:/workspace路径下,输入:
     
        javac  com/A.java  -d .
        红色为源文件路径,蓝色为输出路径。注意-d后面有个点。点的意思是在 .java 文件的根目录
     
    则在生成两个文件:
        D:/workspace/com/A.class
        D:/workspace/com/B.class


    为了方便也可以采用:
        javac  com/*.java  -d .
    运行时,在包路径的根目录上运行,比如:在 D:/workspace 路径下,输入:
        java com.A 或 java com/A
     
    如果当前路径是 C:/ 或其他路径,那么
    编译:
        javac -cp D:/workspace D:/workspace/com/*.java -d .
    运行:
        java -cp D:/workspace com.A
     
    总结
     
    1、把包看成是源文件的一部分,而不是一个路径,这点很重要。
    2、如果不加 -cp 标志,则路径为环境变量和当前路径,如果加 -cp 标志,则路径为cp指定的路径和当前路径。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    一个半路出家的渗透测试工程师(三)(持续更新中)
    linux简介
    Maven学习笔记
    博客项目实现文章评论功能(重点是评论回复)
    spring-mvc + shiro框架整合(sonne_game网站开发04)
    LeetCode题解 15题 第二篇
    jsp用jstl标签比较枚举
    spring-mvc+freemarker整合(sonne_game网站开发03)
    sonne_game网站开发02spring+mybatis框架搭建
    spring各jar包作用(转载)
  • 原文地址:https://www.cnblogs.com/configman/p/4657622.html
Copyright © 2020-2023  润新知