zoukankan      html  css  js  c++  java
  • 在Eclipse中用Maven打包jar包--完整版

    将本地的jar导入到maven本地库中

    <!--手动加入库中 -->
    <!-- mvn install:install-file -DgroupId=org.apache.Hadoop -DartifactId=hadoop-common 
    -Dversion=2.0.0-cdh4.6.0 -Dpackaging=jar -Dfile=libhadoop-common-2.0.0-cdh4.6.0.jar 
    mvn install:install-file -DgroupId=org.apache.hadoop -DartifactId=hadoop-hdfs 
    -Dversion=2.0.0-cdh4.6.0 -Dpackaging=jar -Dfile=libhadoop-hdfs-2.0.0-cdh4.6.0.jar -->

    1. 首先搭好Eclipse和Jdk环境

    2. 在Eclipse中安装Maven插件  

    打开help-->Eclipse Marketplace-->Popular 前几个里面就有一个Maven Integration for Eclipse点击install

    3. 新建Maven项目

    Group Id是包名,Artifact Id 是项目名,点击finish就生成了项目。

    pom.xml是其配置文件。main/Java是主要程序

    建好项目后点击Maven install,

    成功后,刷新target文件夹,已经不为空了,其中.jar文件正是生成的jar文件

    是不是以为已经大功告成了,但是在控制台运行这个.jar文件,出现以下错误:

    这是因为没有声明哪个是入口类。

    4.修改jar中的MANIFEST.MF文件

    把.jar文件解压后,出现了以下的文件

    把MANIFEST.MF打开后,

    是这样的:

    [plain] view plain copy
     
    1. Manifest-Version: 1.0  
    2. Archiver-Version: Plexus Archiver  
    3. Created-By: Apache Maven  
    4. Built-By: ddlv  
    5. Build-Jdk: 1.6.0_37  

    把它改成这样:

    [plain] view plain copy
     
    1. Manifest-Version: 1.0  
    2. Class-Path: lib/commons-logging-1.1.1.jar lib/log4j-1.2.17.jar lib/sqljdbc4.jar  
    3. Main-Class: com.ctrip.bi.jdbc_tool.main.Start  
    4. Archiver-Version: Plexus Archiver  
    5. Created-By: Apache Maven  
    6. Built-By: ddlv  
    7. Build-Jdk: 1.6.0_37  



    添加的Class-Path这行指的是这个项目里有引用外部jar包,要指明jar包的位置

    添加的Main-Class这行指的是这个项目的入口类。

    接下去的问题就是如何把这个修改后的.MF文件用来替换.jar中的.MF文件

    在把修改后的粘帖到这里,恭喜你,就大功告成了。

    希望对大家有帮助,还有关于替换.MF文件的办法,我觉得有点low,如果大家知道有别的更好办法,可以一起分享。

  • 相关阅读:
    php基础之简单运算
    选择平淡
    php基础之控制结构
    关于三元运算符的初步应用及理解
    VS2015 遇到异常。这可能是由某个扩展导致的
    C#中如何去除窗体默认的关闭按钮
    (转载)SQL基础--> 约束(CONSTRAINT)
    SQL Server安装后设置SQL Server验证登录
    附加数据库 对于 ""失败,无法打开物理文件 操作系统错误 5:拒绝访问 SQL Sever
    SQL Server数据库操作(二)
  • 原文地址:https://www.cnblogs.com/telwanggs/p/7463852.html
Copyright © 2011-2022 走看看