zoukankan      html  css  js  c++  java
  • java程序编译

    Empoyee.java

    package Company;
    
    public class Empoyee
    {
        String name = "";
    
        public Empoyee(String name)
        {
            this.name = name;
        }
    
        public String getName()
        {
            return this.name;
        }
    }

    编译

    # 开发第三方库
    cd ~/src/Company
    mkdir source
    mkdir classes
    
    # 编写代码并编译
    cd source
    javac -d ../classes Empoyee.java
    
    # 生成Company.jar 
    cd ../classes
    jar -cvf Company.jar Company/*.java

    Hello.java

    import Company.Empoyee;
    
    public class Hello{
        public static void main(String args[])
        {
            Empoyee e1 = new Empoyee("lishujun");
            System.out.println(e1.getName());
        }
    }

    编译

    # 在代码里引用第三方库进行开发
    
    cd ~/src/hello
    mkdir classes
    mkdir source
    mkdir lib
    
    # 编译引用第三方库程序
    cd source
    javac -d ../classes Hello.java -cp ../lib/Company.jar
    
    # 执行引用第三方库程序
    cd ../classes
    java -cp .;../lib/Company.jar Hello
    MANIFEST.MF文件内容:
    
    Manifest-Version: 1.0
    Class-Path: ../lib/Company.jar
    Main-Class: Hello
    
    Class-Path指定的是该jar包依赖的第三方jar包位置
    
    Main-Class指定的是包含main函数的文件名
    
    Jar包依赖关系通过Class-Path指定以后就无须从命令行上进行指定了
    
    MANIFEST.MF 必须放在META-INF目录下
    #可执行程序打包 (依赖第三方包)
    
    cd ~/src/hello
    mkdir classes
    mkdir source
    mkdir lib
    mkdir META-INF
    
    cd source
    javac -d ../classes Hello.java -cp ..lib/Company.jar
    
    cd ../classes
    jar -cvfM Hello.jar Hello.class META-INF/MANIFEST.MF
    
    # 执行可执行程序
    java -jar Hello.jar Hello
  • 相关阅读:
    form在两个div之间会有间距 得加上style="margin:0px"
    JavaScript trim函数大赏 (转)
    js prototype
    aptana对齐快捷键ctrl+shift+f
    深入浅出JSON
    ie和火狐的一些区分
    javascript”面向对象编程” 2聊聊对象的事
    _#【media type / media query】
    【ajax】接口数据赋给全局变量
    _#【HTML 优化】使用相对 URL
  • 原文地址:https://www.cnblogs.com/code-style/p/3832295.html
Copyright © 2011-2022 走看看