当前位置:首页 » 编程软件 » ant编译mxmlc

ant编译mxmlc

发布时间: 2023-05-15 09:07:33

1. ant怎么编译带有依赖关系的类

1.所有的类一起编译。
2.你的父添加到classpath中。
3.ant 中添加 classpath 下边是例 子。
<javac destdir="${classes.dir}" srcdir="${src.dir}" encoding="UTF-8">
<classpath refid="classespath" />
</javac>

2. ant编译build.xml文件

折腾了大半天,可算捣腾出来了,这里需要提醒注意如下几点:

1、如果jdk是1.6及以下,则需要使用的ant版本是1.9.x;

2、如果jdk是1.8,则需要使用ant版本是1.10.x;

3、可用eclipse导出war包,将lib目录下的jar包放到一个目录下,然后直接引用,避免遗漏掉jar包没导入进去。

以下是build.xml文件内容,安装好ant后,直接执行ant build.xml即可打包。

<?xml version="1.0" encoding="UTF-8"?>

<!-- 定义一个工程,默认任务为warFile。 -->

<project name="bing-info" default="warFile" basedir=".">

    <!-- 指定jdk 貌似这里指定也没什么用~-->

    <property name="env.JAVA_HOME" value="C:/Program Files/Java/jdk1.8.0_101"/>

    <!-- 定义属性,打成war包的名称。 -->

    <property name="warFileName" value="nbAPP.war"></property>

    <!-- 指定war包路径及依赖包路径   这里需要指定工程的路径 -->

    <property name="compilePath" value="D:/project/nbAPP"/>

    <!-- 定义路径,编译java文件时用到的jar包。 -->

    <path id="project.lib">

        <fileset dir="${basedir}/lib">

            <include name="**/*.jar"/>

        </fileset>

    </path>

    <!-- 定义任务,清空任务:清空原有的class文件,创建新的build路径。 -->

    <target name="clean">

        <delete dir="${compilePath}/build" />

        <mkdir dir="${compilePath}/build" />

    </target>

    <!-- 定义任务,编译src文件夹中的java文件,编译后的class文件放到创建的文件夹下。 -->

    <target name="compile" depends="clean">

        <javac srcdir="${basedir}/src/main" debug="true" includeantruntime="false" encoding="UTF-8" >

            <classpath refid="project.lib">

            </classpath>

        </javac>

    </target>

    <!-- 定义默认任务,将class文件集合成jar包。 -->

    <target name="warFile" depends="compile">

        <!-- 删除原有war包。 -->

        <delete dir="${compilePath}/${warFileName}" />

        <!-- 建立新war包。 -->

        <war destfile="${compilePath}/${warFileName}" webxml="${basedir}/WebRoot/WEB-INF/web.xml">

            <!-- 将非jar和非class文件拷贝到war包的对应路径下。 -->

            <fileset dir="${basedir}/WebRoot">

                <include name="**/**.*" />

                <exclude name="**/*.jar"/>

                <include name="WEB-INF/classes/**"/>

            </fileset>

            <!-- 将jar和class文件拷贝到war包的对应路径下。 -->

            <lib dir="${compilePath}/lib" />

            <classes dir="${compilePath}/build" />

            <!-- 将资源文件拷贝进war对应路径下 -->

            <classes dir="${basedir}/src/main/resources" />

        </war>

    </target>

</project>

3. 有用过ant自动编译flex项目的吗

偶然编译一个开源as3(采用flex sdk——采用flex4.6)项目,由ant配置进行自动编译,想增加特性,需要在原有编译预定义全局常量(由-define=XXX:NNNN,VVVV 形式定义)基础上需要增加参数,如原来只有XXX:NNNN1,VVVV1 现在想还有XXX:NNNN2,VVVV2 。
原来的项目采用的是ant exec 直接调用mxmlc命令行进行编译(可以不依赖于flex的flexTasks限制),其调用mxmlc传入参数(传入的参数是字符串值)采用如下方式

点击(此处)折叠或打开
<exec executable="${mxmlc.exe}" dir="${basedir}" failonerror="true">

<arg line="'${src.dir}/${package}/${class}.as'" />

...

<arg line="-define=XXXX::nnnn1,'vvv1'" />

</exec>
当然现在编译是成功的,我依葫芦画瓢改写成

点击(此处)折叠或打开
<exec executable="${mxmlc.exe}" dir="${basedir}" failonerror="true">

<arg line="'${src.dir}/${package}/${class}.as'" />

...

<arg line="-define=XXXX::nnnn1,'vvv1'" />

4. 如何使用ANT在命令行进行编译和测试

一、环境变量
在网上找到ANT的压缩包,解压缩以后放到C盘根目录如下图

对,就是这个鬼样子,放在这里就可以用了,不用安装之类的
环境变量如下图:

你要定义ANT_HOME,然后让系统path找到这个ANT_HOME就行了

二、写build.xml

你的目录结构如下图:

源文件 放在src
引用的jar包放在lib
编译结果安排在classes

接下来就是build.xml了
如下,自己看吧

[html] view plain
<?xml version="1.0"?>
<project name="pojo_0428" default="prepare" basedir=".">

<property name="source.root" value="src"/>
<property name="class.root" value="classes"/>
<property name="lib.dir" value="lib"/>

<!-- class path for compilation and execution -->
<path id="basepath">
<!-- 运行时 class文件的位置 -->
<pathelement location="${class.root}" />
<!-- jar包 -->
<fileset dir="${lib.dir}">
<include name="*.jar"/>
</fileset>
</path>

<!--默认的target -->
<target name="prepare">
<delete dir="${class.root}"/>
<mkdir dir="${class.root}"/>
</target>

<!--编译 -->
<target name="compile" depends="prepare">
<javac srcdir="${source.root}"
destdir="${class.root}"
debug="on"
optimize="off"
deprecation="on">
<classpath refid="basepath"/>
</javac>
</target>
<!--执行。 案例程序的入口 依赖 compile -->
<target name="run" depends="compile">
<java classname="com.javathink.Student" fork="true">
<classpath refid="basepath"/>
</java>
</target>

</project>

5. java ant 编译问题

从错误上看是由于ant编译时虚拟机内存不足导致溢出,你可以试试下面的方法:
打开菜单Window>Preference>Java>Installed JREs
转钟默认的jre,点击edit,在Default VM Arguments中输入-Xms256m -Xmx512m
重新启动myeclipse再试试

热点内容
锐龙哪个配置最高画质 发布:2025-07-13 18:22:34 浏览:196
压缩机工作原理图 发布:2025-07-13 18:10:15 浏览:39
黑暗追求者安卓怎么联机 发布:2025-07-13 18:10:07 浏览:617
北大保安自学编程 发布:2025-07-13 18:09:58 浏览:858
java递归排列 发布:2025-07-13 18:02:43 浏览:473
轻量云服务器如何换成d盘 发布:2025-07-13 17:58:45 浏览:931
重置腾讯云服务器时间 发布:2025-07-13 17:54:55 浏览:326
aes256java加密 发布:2025-07-13 17:54:46 浏览:710
mc开服务器的电脑 发布:2025-07-13 17:46:47 浏览:195
事件linux 发布:2025-07-13 17:45:51 浏览:143