转:多个jar包打成一个大的jar包

 ant中的build.xml主要标签如下:

(1)<mkdir>创建文件夹

(1)<copy>拷贝文件

(2)<javac> 编译java文件     

(3)<jar>打包class文件

(3)<unzip>解压缩jar包

      具体用法网上有很多,不过有一用法很值得一提,就是将多个jar包打成一个大的jar包,代码如下:

<target name="jar" depends="compile">
   <echo message="Jar: ${name}"/>
<unzip src="${hive.root}/lib/commons-logging-1.0.4.jar" dest="${build.dir.hive}/commons-logging/classes">
      <patternset>
      <exclude name="META-INF"/>
      <exclude name="META-INF/MANIFEST.MF"/>
      </patternset>
</unzip>
<unzip src="${hive.root}/lib/libfb303.jar" dest="${build.dir.hive}/fb303/classes">
       <patternset>
       <exclude name="META-INF"/>
       <exclude name="META-INF/MANIFEST.MF"/>
       </patternset>
</unzip>
<unzip src="${hive.root}/lib/log4j-1.2.15.jar" dest="${build.dir.hive}/log4j/classes">
          <patternset>
          <exclude name="META-INF"/>
          <exclude name="META-INF/MANIFEST.MF"/>
          </patternset>
</unzip>
<unzip src="${build.dir.hive}/hadoopcore/hadoop-0.20.1/hadoop-0.20.1-core.jar" dest="${build.dir.hive}/hadoop/classes">
             <patternset>
             <exclude name="META-INF"/>
             <exclude name="META-INF/MANIFEST.MF"/>
             </patternset>
</unzip>

     <!-- jar jarfile="${build.dir}/hive_${name}.jar" basedir="${build.classes}" / -->
<jar jarfile="${hive.root}/hugetable_jdbc_driver.jar">
       <fileset dir="${build.dir.hive}/commons-logging/classes" includes="**/*.class"/>
    <fileset dir="${build.dir.hive}/fb303/classes" includes="**/*.class"/>
    <fileset dir="${build.dir.hive}/log4j/classes" includes="**/*.class"/>
    <fileset dir="${build.dir.hive}/hadoop/classes" includes="**/*.class"/>
  
</jar>
</target>

第一步:解压需要的jar文件到一个特定目录。

第二步:将解压好的class文件一起压缩到目的jar包。

 

微服务是一种架构风格,将一个大型应用程序拆分成多个小型的、独立的服务单元,每个服务单元可以独立开发、部署和维护。将微服务项目打成多个jar包可以更好地实现服务的解耦和独立部署。 首先,将微服务项目按照功能划分成多个模块或服务单元,每个模块独立开发,并打包成可执行的jar包。 然后,可以通过使用依赖管理工具(如Maven或Gradle)来管理这些jar包之间的依赖关系。在项目的pom.xml(或build.gradle)文件中,将其他模块作为依赖引入,指定每个模块的groupId、artifactId和版本号等信息。 当使用这些jar包时,可以通过引入对应的模块来调用其提供的服务。在代码中使用import语句引入对应的类、接口或组件,并进行调用。 此外,为了能够正确地运行这些jar包,还需要在项目中配置相关的环境信息。例如,需要配置各个服务单元的端口号、数据库连接等信息。可以通过配置文件来统一管理这些环境变量,并在项目启动时读取并注入到对应的模块中。 为了部署这些jar包,可以将它们分布在不同的服务器上,每个服务单元独立运行。可以使用一些工具来管理和监控这些微服务,例如Docker、Kubernetes等。 在实际部署和运行时,可以通过命令行或脚本来启动每个jar包,保证每个服务单元独立运行。可以使用一些工具(如Nginx)来实现服务的负载均衡和流量发,提高系统的可用性和性能。 总之,将微服务项目打成多个jar包可以更好地实现服务的独立部署和维护。通过合理的依赖管理和配置,可以使多个服务单元之间实现解耦,提高系统的灵活性和可扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值