`
zz563143188
  • 浏览: 2281286 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
博客专栏
77fc734c-2f95-3224-beca-6b8da12debc8
编程工具介绍
浏览量:579761
D9710da2-8a00-3ae6-a084-547a11afab81
Spring Mvc实战(...
浏览量:1089074
D3f88135-07de-3968-a0f0-d2f13428c267
项目开发经验
浏览量:1659924
社区版块
存档分类
最新评论

Ant构建中使用JS脚本方法

阅读更多

Ant的构建脚本中可以嵌入脚本,包括JSGroovyRuby等。
以集成平台3.0发布的构建脚本为例,说明一下Ant构建嵌入JS的方法。

一、引入依赖包
        ant-contrib-1.0b3.jar
        bsf-2.4.0.jar
        js.jar

二、语法

<script language="javascript">
      <classpath />
      <![CDATA[
        {js代码}
      ]]>
  </script>


   Language可选javascriptgroovyruby
   Javascript脚本引入js.jargroovy引入groovy.jar

三、JS变量访问
Project是内置变量,可以直接访问。在ant里定义的properties可以用以下代码获得
project.getProperty("release.local.export.path");
当然也可以修改ant的属性
project.setProperty("source.view.dir",files[0]);

四、案例说明
集成平台3.0发布规则,将开发流的代码复制到发布流,目录带发布日期和版本信息。发布代码的目录是变态变化的,每次发版,目录名称都会变化。发布程序需要调用发布代码里的构建脚本,因此,必须要解决取得发布目录的难题。
以下脚本通过JS代码获取发布代码目录。

  <!-- 找出最新的发布流程序保存的目录名称 -->
  <target name="init.path" depends="export.release">
    <script language="javascript">
      <classpath refid="js.classpath" />
      <![CDATA[
        importClass(java.io.File);
        importClass(java.io.FilenameFilter);
        importClass(java.util.regex.Matcher);
        importClass(java.util.regex.Pattern);
            
        path = project.getProperty("release.local.export.path");
        root = new File(path);
        if(root.exists() && root.isDirectory()){
        files = root.listFiles();
        if(files.length>0){
          project.setProperty("source.view.dir",files[0]);
        }
      }
      ]]>
    </script>
    <echo>${source.view.dir}</echo>
  </target>
  • 大小: 105.6 KB
  • 大小: 158 KB
  • 大小: 184.2 KB
  • 大小: 118.1 KB
  • 大小: 154.1 KB
  • 大小: 221 KB
12
4
分享到:
评论
32 楼 jeonkeen 2013-05-28  
zz563143188 写道
jeonkeen 写道
zz563143188 写道
jeonkeen 写道
大哥好 下载下来的 里面有 webroot 和 web 目录 哪一个才是真正的web目录啊, 如果webroot是的话  web目录又是干嘛的,而且webroot下面的WEB_INF下面的lib目录没有  web目录下的WEB_INF下的lib有

webroot 是运行的,web目录是自动代码生的模板要复制出来的。


张哥好  那webroot 下面的WEB-INF下面的lib没有啊,整个项目的jar包能贴出来吗

去这里下载 http://pan.baidu.com/share/link?shareid=372668&uk=4076915866#dir/path=%2F%E5%AD%A6%E4%B9%A0%E6%96%87%E4%BB%B6

请下载codeFactory20130307,lib20130307文件,

嗯嗯  谢谢老哥  可以了
31 楼 zz563143188 2013-05-28  
jeonkeen 写道
zz563143188 写道
jeonkeen 写道
大哥好 下载下来的 里面有 webroot 和 web 目录 哪一个才是真正的web目录啊, 如果webroot是的话  web目录又是干嘛的,而且webroot下面的WEB_INF下面的lib目录没有  web目录下的WEB_INF下的lib有

webroot 是运行的,web目录是自动代码生的模板要复制出来的。


张哥好  那webroot 下面的WEB-INF下面的lib没有啊,整个项目的jar包能贴出来吗

去这里下载 http://pan.baidu.com/share/link?shareid=372668&uk=4076915866#dir/path=%2F%E5%AD%A6%E4%B9%A0%E6%96%87%E4%BB%B6

请下载codeFactory20130307,lib20130307文件,
30 楼 jeonkeen 2013-05-28  
zz563143188 写道
jeonkeen 写道
大哥好 下载下来的 里面有 webroot 和 web 目录 哪一个才是真正的web目录啊, 如果webroot是的话  web目录又是干嘛的,而且webroot下面的WEB_INF下面的lib目录没有  web目录下的WEB_INF下的lib有

webroot 是运行的,web目录是自动代码生的模板要复制出来的。


张哥好  那webroot 下面的WEB-INF下面的lib没有啊,整个项目的jar包能贴出来吗
29 楼 zz563143188 2013-05-28  
jeonkeen 写道
大哥好 下载下来的 里面有 webroot 和 web 目录 哪一个才是真正的web目录啊, 如果webroot是的话  web目录又是干嘛的,而且webroot下面的WEB_INF下面的lib目录没有  web目录下的WEB_INF下的lib有

webroot 是运行的,web目录是自动代码生的模板要复制出来的。
28 楼 jeonkeen 2013-05-28  
大哥好 下载下来的 里面有 webroot 和 web 目录 哪一个才是真正的web目录啊, 如果webroot是的话  web目录又是干嘛的,而且webroot下面的WEB_INF下面的lib目录没有  web目录下的WEB_INF下的lib有
27 楼 ls8023 2013-05-03  
zz563143188 写道
ls8023 写道
收集五年的开发资料下载地址:  http://pan.baidu.com/share/link?shareid=372668&uk=4076915866#dir/path=%2F%E5%AD%A6%E4%B9%A0%E6%96%87%E4%BB%B6

----你这里面 压缩文件  下载怎么提示 有病毒啊,

具体那个文件,说详细一点

---兄弟 在么 可以加个好友没 
26 楼 ls8023 2013-05-02  
zz563143188 写道
ls8023 写道
收集五年的开发资料下载地址:  http://pan.baidu.com/share/link?shareid=372668&uk=4076915866#dir/path=%2F%E5%AD%A6%E4%B9%A0%E6%96%87%E4%BB%B6

----你这里面 压缩文件  下载怎么提示 有病毒啊,

具体那个文件,说详细一点



压缩文件 只要是压缩多会提示有病毒
25 楼 zz563143188 2013-05-02  
ls8023 写道
收集五年的开发资料下载地址:  http://pan.baidu.com/share/link?shareid=372668&uk=4076915866#dir/path=%2F%E5%AD%A6%E4%B9%A0%E6%96%87%E4%BB%B6

----你这里面 压缩文件  下载怎么提示 有病毒啊,

具体那个文件,说详细一点
24 楼 ls8023 2013-05-01  
收集五年的开发资料下载地址:  http://pan.baidu.com/share/link?shareid=372668&uk=4076915866#dir/path=%2F%E5%AD%A6%E4%B9%A0%E6%96%87%E4%BB%B6

----你这里面 压缩文件  下载怎么提示 有病毒啊,
23 楼 zz563143188 2013-03-21  
zz563143188 写道
wuhui520 写道
wuhui520 写道
请重新上传oracle库 cms2013.dmp, 谢谢

原有链接均已失效

cms2013.dmp这个涉及到版权问题,有公司要我删除了。我全部采用了mysql版本。

你说一下你的QQ邮箱,我私人发给你。
22 楼 zz563143188 2013-03-21  
wuhui520 写道
wuhui520 写道
请重新上传oracle库 cms2013.dmp, 谢谢

原有链接均已失效

cms2013.dmp这个涉及到版权问题,有公司要我删除了。我全部采用了mysql版本。
21 楼 wuhui520 2013-03-21  
wuhui520 写道
请重新上传oracle库 cms2013.dmp, 谢谢

原有链接均已失效
20 楼 wuhui520 2013-03-21  
请重新上传oracle库 cms2013.dmp, 谢谢
19 楼 iqeq00 2013-03-03  
邱师兄,你别告诉我,真是你?
18 楼 zz563143188 2013-03-03  
海盗大哥 写道
zz563143188 写道
海盗大哥 写道
springUtils ???
	public  static  SessionFactory  GetSessionFactory ()  {
		Resource  resource  =  new  ClassPathResource ( "/applicationContext.xml" );
		BeanFactory  factory  =  new  XmlBeanFactory ( resource );
		SessionFactory  sessionFactory  =  ( SessionFactory )  factory
				. getBean ( "sessionFactory" );
		return  sessionFactory ;

	}

	public  static  SessionFactory  GetSessionFactoryForWeb ()  {
		ApplicationContext  context  =  new  ClassPathXmlApplicationContext (
				new  String []  {  "WebRoot/WEB-INF/applicationContext.xml"  });
		BeanFactory  factory  =  new  XmlBeanFactory (( Resource )  context );
		SessionFactory  sessionFactory  =  ( SessionFactory )  factory
				. getBean ( "sessionFactory" );
		return  sessionFactory ;
	}

这是调用xml文件

为了获取个bean 去初始化ApplicationContext 不太好吧

那按照下面的做也可以
@ContextConfiguration(locations = { "classpath:config/applicationContext.xml",
"classpath:config/cache-context.xml",
"classpath:config/captcha-context.xml",
"classpath:config/jeecms-context.xml",
"classpath:config/jeecms-servlet-admin-action.xml",
"classpath:/config/jeecms-servlet-admin.xml",
"classpath:/config/jeecms-servlet-front-action.xml",
"classpath:config/jeecms-servlet-front.xml",
"classpath:/config/jeecore-context.xml" })
@RunWith(SpringJUnit4ClassRunner.class)
@Transactional
@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true)
public class test {
@Autowired
CmsAppInfoDao cmsAppInfoDao;
@Autowired
CmsLogDao cmsLogDao;
@Autowired
CmsAppInfoMng cmsAppInfoMng;

@Test
public void testGetAppInfoData() {
System.out.println("开始读取数据。。。。。。");
System.out.println("用DAO读取数据读出数:" + cmsAppInfoDao.getList(true).size());
System.out.println("用service读取数据读出数:"
+ cmsAppInfoMng.getList(true).size());
System.out.println("结束读取数据");

}

17 楼 海盗大哥 2013-03-02  
zz563143188 写道
海盗大哥 写道
springUtils ???
	public  static  SessionFactory  GetSessionFactory ()  {
		Resource  resource  =  new  ClassPathResource ( "/applicationContext.xml" );
		BeanFactory  factory  =  new  XmlBeanFactory ( resource );
		SessionFactory  sessionFactory  =  ( SessionFactory )  factory
				. getBean ( "sessionFactory" );
		return  sessionFactory ;

	}

	public  static  SessionFactory  GetSessionFactoryForWeb ()  {
		ApplicationContext  context  =  new  ClassPathXmlApplicationContext (
				new  String []  {  "WebRoot/WEB-INF/applicationContext.xml"  });
		BeanFactory  factory  =  new  XmlBeanFactory (( Resource )  context );
		SessionFactory  sessionFactory  =  ( SessionFactory )  factory
				. getBean ( "sessionFactory" );
		return  sessionFactory ;
	}

这是调用xml文件

为了获取个bean 去初始化ApplicationContext 不太好吧
16 楼 yupengdahappy 2013-03-02  
学习的榜样!
15 楼 hngmduyi 2013-03-02  
14 楼 comsci 2013-03-02  
这位兄弟,太牛了,坚决顶起来。。。
13 楼 zz563143188 2013-03-02  
lsjinpeng 写道
好多技术~~~~~~~~~~~
好多软件~~~~~~~

这都是我几年的积累

相关推荐

    使用Ant构建批量压缩js、css文件脚本

    3. **在Ant构建文件中引入YUI Compressor**:在build.xml中,使用`&lt;taskdef&gt;`标签引入YUI Compressor的任务定义,例如: ```xml ``` 4. **定义压缩目标**:创建一个或多个目标,分别处理js和css文件...

    ant构建以及基本运用

    《Ant构建及其基本应用》 Ant是Apache软件基金会下的一个项目,它是一个Java构建工具,主要用来自动化构建Java应用程序。Ant以其灵活性和可扩展性在Java开发领域中占据了重要的地位,尤其是在大型项目或者团队协作...

    jsmooth生成exe文件ant脚本

    本文将深入探讨如何使用Ant构建工具来配合jsmooth生成.exe文件。 Ant是Apache软件基金会开发的一个Java项目,它是一个基于XML的构建工具,用于自动化Java项目的构建、编译和测试等任务。在jsmooth中,Ant脚本扮演了...

    ant-apache-bsf-1.7.1.jar.zip

    在实际应用中,使用"ant-apache-bsf-1.7.1.jar",开发者可以在Ant构建脚本中添加BSF任务,通过`&lt;bsf:script&gt;`标签来执行脚本。这个标签可以接受引擎名、脚本语言、脚本源代码或文件路径等参数,从而实现脚本的执行。...

    ant-apache-bsf-1.7.0.jar.zip

    "ant-apache-bsf-1.7.0.jar.zip"文件是这两个组件的结合,提供了在Ant构建过程中使用各种脚本引擎的能力。本文将深入探讨这个组合的具体内容和用途。 首先,让我们了解一下Ant。Ant是由Apache软件基金会开发的一个...

    ari.js:使用 Apache Ant 的全部功能在 Javascript 中编写构建脚本

    传统的构建工具,如Apache Ant,通常使用XML作为配置语言,但在JavaScript世界中,开发者更倾向于使用与编程语言一致的语法来编写构建脚本。这就是`ari.js`出现的原因,它允许开发者用JavaScript编写构建脚本,同时...

    用Ant实现Java项目的自动构建和部署

    Ant是一个基于XML的构建工具,它的配置文件(build.xml)定义了构建过程中的各种任务,如编译、打包、测试和部署等。XML结构使得构建过程可读性强,易于维护。 对于J2ME项目,Ant可以完成以下步骤: 1. **编译源...

    npm工具ant

    在实际使用中,用户可以通过这个包装器在Node.js项目中执行Ant构建脚本,进行项目构建和管理任务,而无需离开Node.js的开发环境。 总的来说,这个“npm工具ant”提供了一种在Node.js环境中利用Ant的强大构建功能的...

    ant.rar +使用文档

    7. **脚本支持**:Ant还支持在构建过程中运行外部脚本,如JavaScript、Groovy或Beanshell,这使得Ant具有很高的可扩展性。 8. **插件与第三方任务**:除了内置任务,Ant还可以通过`&lt;taskdef&gt;`引入第三方插件,比如...

    Ant入门-ant入门pdf

    《Ant入门》是一本专为初学者设计的电子书,主要涵盖了Apache Ant这一构建工具的基础知识和使用方法。Ant是Java开发中广泛使用的自动化构建工具,由Apache软件基金会开发,其设计目标是简化项目构建过程,使开发者...

    ant-1.8.0 apache-ant-1.8.0

    8. **脚本支持**:除了XML,Ant还允许在构建文件中嵌入JavaScript、Python等脚本语言,增加了构建过程的动态性。 9. **发布与部署**:Ant可以用于应用的打包、发布和部署,包括生成JAR、WAR或EAR文件,以及将这些...

    ruoyi-cloud前端工程,使用ant design vue框架

    总之,Ruoyi-Cloud是一个基于Ant Design Vue的前端框架,适用于快速构建后台管理系统,它结合了Vue.js的灵活性和Ant Design的优秀设计,为开发者提供了强大的工具和资源,以实现高效且美观的web应用。

    ant 1.8.1源代码

    2. **任务(Task)**: 任务是Ant构建过程中的基本操作单元,如`javac`用于编译Java源码,`jar`用于创建JAR文件,`copy`用于复制文件等。 3. **目标(Goal)**: 目标是一系列任务的集合,它们按照特定顺序执行,形成一个...

    ant-1.6.2直接解压使用

    Apache Ant 是一个广泛使用的Java构建工具,它允许开发者通过XML配置文件定义构建任务,从而自动化项目的构建、测试和部署过程。在"ant-1.6.2直接解压使用"这个资源中,用户可以直接解压文件,无需进行复杂的安装...

    ant和yuicompressor 压缩css、js方案

    标题中的“ant和yuicompressor 压缩css、js方案”指的是在软件开发中,使用Apache Ant构建工具和YUI Compressor优化前端资源的一种方法。Ant是一个Java库和命令行工具,主要用于自动化构建过程,如编译、打包、测试...

    ant培训 经典教程

    在任务中使用文件集可以批量处理文件。 6. **依赖关系**:Ant能处理任务间的依赖关系,确保任务的执行顺序正确。例如,编译任务通常依赖于源代码清理任务,打包任务又依赖于编译任务。 7. **宏定义(Macros)**:...

    ant打包编译全套资料

    8. **脚本支持**:Ant支持使用Java、JavaScript、Groovy等脚本语言编写复杂逻辑。 9. **外部工具集成**:如通过`&lt;exec&gt;`标签调用外部命令行工具,如JUnit进行测试。 10. **Eclipse集成**:在Eclipse中配置Ant,创建...

    ant打war包

    2. 如何配置Ant构建文件以集成SVN:包括引入svn task库,设置svn相关的属性,以及在Ant脚本中调用SVN命令。 3. 使用Ant进行构建和部署的步骤:解释如何运行Ant脚本,以及如何将生成的WAR包部署到Web服务器。 4. 版本...

    ant-apache-bsf-1.6.1.jar.zip

    这个JAR文件可以直接添加到Java项目的类路径中,以便在Ant构建脚本中使用BSF的特性。 "ant.license.txt"则包含了Apache Ant的许可信息,这通常包括软件的授权协议,比如Apache软件基金会发布的Apache License 2.0。...

Global site tag (gtag.js) - Google Analytics