转自:http://xiaolongfeixiang.iteye.com/blog/642996
做JavaWeb时,只需将第三方的jar包,复制到服务器的指定目录,即可!例如:
Tomcat6.0.20 复制到 %Tomcat的解压目录%lib下 (这个Server公用的)
或者 项目的WEB-INF/lib目录下。
但是在做JavaSE应用时,第三方的jar包,应该如何放置呢?
解决方法:
1、可以在JavaSE应用的启动时候,设置classpath,使其包括第三方的jar包。
2、将第三方的jar包,于JavaSE打包在同一个jar中。(本文的目标)
方法详解:
情形假设(都在C:\Test下):
1、JavaSE应用已经打包成jar了(hello.jar)。
2、第三方的jar(lib/tool.jar)
STEP01: 建立一个文本文档。
这里建立一个my.mf(也可以是 XXX.txt)
说明:第一行不需要,只是为了最后的演示方遍而加入的。
Class-Path一定要加入
末尾一定要有一个空行。(具体约定,见JavaTutorial中的Deployment一章)
STEP02: jar命令打包:
命令行:
选项介绍:
-u 表示更新jar包。-- 这里将lib目录放入jar中,当然需要此选项
-m 指示 Manifest.mf选项的来源。--- 文本文件+符合约定即可
-f 新加入的文件 或者目录。 --- 这里将lib目录下的所有文件、子目录都加入。
注意顺序不要变。
测试一下(因为我设置了 Main-Class,所以可以直接运行):
附源码:
Hello.jar中的test.HelloWorld
- package test;
- import com.yourcompany.ToolBean;
- public class HelloWorld
- {
- public static void main(String[] agrs)
- {
- ToolBean tool = new ToolBean();
- String str = tool.greet(" JavaEye");
- System.out.println(str);
- }
- }
tool中的ToolBean
- package com.yourcompany;
- public class ToolBean
- {
- public String greet(String name)
- {
- return "Hello , " + name;
- }
- }