idea开发swing(二)
闲话少说,书接idea开发swing(一)。
程序编译完成后,需要打包发布,如果有fat_jar的同学可以通过该插件打包,这里是使用ant来打包,步骤如下:
一、编写build.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project default="create_jar" name="swingdemo">
<property name="src.dir" value="src"/>
<property name="build.dir" value="target"/>
<property name="classes.dir" value="classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<property name="lib.dir" value="lib"/>
<property name="config.dir" value="config"/>
<property name="plugin.dir" value="plugin"/>
<property name="db.dir" value="db"/>
<property name="jar_name" value="app"/>
<property name="start_class" value="swingdemo.SwingDemoMain"/>
<path id="application" location="${jar.dir}/${jar_name}.jar"/>
<path id="lib_path">
<fileset dir="${lib.dir}" includes="**/*.jar"/>
</path>
<target name="clean" description="清除构建">
<delete dir="${build.dir}"/>
</target>
<!--
编译系统有intellij处理
<target name="compile" description="编译系统">
<mkdir dir="${classes.dir}"/>
<javac srcdir="src" destdir="${classes.dir}" encoding="GBK" classpathref="lib_path"/>
</target>
-->
<target name="resource" description="初始化资源文件">
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.dir}\jar"/>
<copydir dest="${build.dir}\lib" src="${lib.dir}"/>
<copydir dest="${build.dir}\config" src="${config.dir}"/>
<copydir dest="${build.dir}\db" src="${db.dir}"/>
<copydir dest="${plugin.dir}\plugin" src="${plugin.dir}"/>
<copy todir="${build.dir}" file="start.bat"/>
</target>
<target name="create_jar" depends="clean,resource" description="打包">
<pathconvert property="mf.classpath" pathsep=" ">
<mapper>
<chainedmapper>
<!-- 移除绝对路径 -->
<flattenmapper />
<!-- 加上lib前缀 -->
<globmapper from="*" to="../lib/*" />
</chainedmapper>
</mapper>
<fileset dir="${lib.dir}">
<include name="*.jar" />
</fileset>
</pathconvert>
<jar destfile="${jar.dir}/${jar_name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${start_class}"/>
<attribute name="Class-Path" value="${mf.classpath} "/>
</manifest>
</jar>
</target>
<target name="run" depends="create_jar" description="运行">
<java fork="true" classname="${start_class}">
<classpath>
<path refid="lib_path"/>
<path refid="application"/>
</classpath>
</java>
</target>
</project>

二、编写start.bat
set path=c:\Program Files (x86)\Java\jdk1.7.0\bin;%path%
cd jar
java -jar swingdemo.jar
三、加入lib包
由于程序使用的intellij自带的布局方式,所以需要引用intellij内的一个jar包,该jar包的位置处于:../IntelliJ IDEA 12.1.1/lib/forms_rt.jar ,将该jar包拷贝到工程的lib文件夹内。
四、调用ant脚本
点击intellij idea 工作区右侧的插件面板上的Ant Build按钮,弹出界面,点击“+”添加工程内的build.xml文件,可以选择四个阶段来进行程序的打包。
五、完成
打包完成后,会在工程路径下生成target文件夹,文件夹内包含程序及所需文件,点击start.bat即可运行。
idea开发swing(二)的更多相关文章
- IntelliJ IDEA 开发swing(二)
原文:idea开发swing(二) 闲话少说,书接idea开发swing(一). 程序编译完成后,需要打包发布,如果有fat_jar的同学可以通过该插件打包,这里是使用ant来打包,步骤如下: 一.编 ...
- IntelliJ IDEA 开发swing(一)
原文:idea开发swing(一) 最近项目组需要开发一个swing小工具,以下是开发过程. 一.创建工程: 输入工程名称,选择java module,点击next 接下来什么都不选点击finish, ...
- SQL开发技巧(二)
本系列文章旨在收集在开发过程中遇到的一些常用的SQL语句,然后整理归档,本系列文章基于SQLServer系列,且版本为SQLServer2005及以上-- 文章系列目录 SQL开发技巧(一) SQL开 ...
- MVC5 网站开发之二 创建项目
昨天对项目的思路大致理了一下,今天先把解决方案建立起来.整个解决包含Ninesky.Web.Ninesky.Core,Ninesky.DataLibrary等3个项目.Ninesky.Web是web应 ...
- ASP.NET MVC5 网站开发实践(二) Member区域–管理列表、回复及删除
本来想接着上次把这篇写完的,没想到后来工作的一些事落下了,放假了赶紧补上. 目录: ASP.NET MVC5 网站开发实践 - 概述 ASP.NET MVC5 网站开发实践(一) - 项目框架 ASP ...
- ASP.NET MVC5 网站开发实践(二) Member区域–我的咨询列表及添加咨询
上次把咨询的架构搭好了,现在分两次来完成咨询:1.用户部分,2管理部分.这次实现用户部分,包含两个功能,查看我的咨询和进行咨询. 目录: ASP.NET MVC5 网站开发实践 - 概述 ASP.NE ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 咨询管理的架构
咨询.留言.投诉等功能是网站应具备的基本功能,可以加强管理员与用户的交流,在上次完成文章部分后,这次开始做Member区域的咨询功能(留言.投诉都是咨询).咨询跟文章非常相似,而且内容更少.更简单. ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 修改及删除文章
上次做了显示文章列表,再实现修改和删除文章这部分内容就结束了,这次内容比较简单,由于做过了添加文章,修改文章非常类似,就是多了一个TryUpdateModel部分更新模型数据. 目录: ASP.N ...
- ASP.NET MVC5 网站开发实践(二) Member区域 - 全部文章列表
显示文章列表分两块,管理员可以显示全部文章列表,一般用户只显示自己的文章列表.文章列表的显示采用easyui-datagrid.后台需要与之对应的action返回json类型数据 目录 ASP.N ...
随机推荐
- C++11并发——多线程lock_gurad ,unique_lock (三)
http://www.cnblogs.com/haippy/p/3346477.html struct defer_lock_t {}; 该类型的常量对象 defer_lock(defer_lock ...
- UML简单熟悉
+ :代表public - :代表private # :代表protected 实现,继承关系:implements,extends 关联关系:使一个类知道另一个类的属性和方法 每一个Driver类 ...
- 洛谷 P1140 相似基因(DP)
传送门 https://www.cnblogs.com/violet-acmer/p/9852294.html 参考资料: [1]:https://www.cnblogs.com/real-l/p/9 ...
- 关闭应用程序(主程序)(WPF)
很多人认为关闭应用程序应该很简单,例如WindowsForm里一个Application.Exit();方法就可以解决问题,但在WPF里面可别滥用,因为WPF里Application类没有该方法,倒是 ...
- ( 大数 startsWith substring) Exponentiation hdu1063
Exponentiation Time Limit: 2000/500 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- MySQL5.5登录密码忘记了,怎嘛办?
1.关闭正在运行的MySQL. 2.打开DOS窗口,转到mysql\bin目录. 3.输入mysqld --skip-grant- tables回车.如果没有出现提示信息,那就对了. 4.再开一 ...
- a超链接之返回顶部的两种实现方法
1.通过css实现: 为页面顶部如body或者自己设置的盒子等加上唯一id属性 <body id="id"> .... <a href="#id&quo ...
- 虚拟机下安装ubuntu后root密码登录失败的问题
问题描述: 在虚拟机下安装了ubuntu中要输入用户名,一般情况下大家都会输入一个自己的网名或绰号之类的,密码也在这时设置过了. 但是当安装成功之后,使用命令#su root,然后输入刚才设置的密码, ...
- 从零开始搭建Salt Web之初探salt-api
Salt-API入门 在Google搜索栏输入salt-api,会有一些讲述如何使用Salt-API的文章,确实有效,不过都是建立 在将Salt安装在默认目录下的情况下,即通过apt-get inst ...
- 05-迪米特法则(LOD 又名: 最少知道原则)
1. 背景 类与类之间的关系越密切,耦合度越大,当一个类发生变化时,对另一个类的影响也越大. 2. 定义 一个类应该对其它类保持最少的了解. 3. 解决方法 尽量降低类与类 ...