`

ant 缺少根组件报错

    博客分类:
  • Ant
阅读更多

我的环境:XP ANT1.7

运行工程的bulid.xml报错: 缺少根组件报错

 

在gg中找到如下文章:

转载地址:http://www.javaresearch.org/article/55190.htm

 

中文问题没商量”之Ant中的中文问题

来源:javajia    

在软件系统中,由于存在着各种各样的字符编码问题,比如另我们非常头痛的中文问题。因此,现在趋向于使用UTF-8编码作为软件中通过编码格式,从而可以避免大多数字符编码的问题。本文跟《80前》一文一样,以Spring项目无关,请“春迷”们自重、没事勿扰,文中不足之处欢迎大家批评指教。

  在Java开发中,我们经常使用Ant来编译及打包项目。默认情况下Ant会去调用一个名为build.xml文件,文件中定义了相关的单元及任务等,可以根据用户命令执行相应的任务单元。
  比如,在很多开源项目如Spring、webwork、EasyJWeb、EasyDBO等,其根目录下都有一个build.xml文件。
在国外的开源项目中,build.xml文件中的内容全部是英文字符,因此build.xml使用普通的ANSI或UTF-8或GBK都没问题,也不会遇到字符编码问题。而对于国产的开源项目EasyJWeb、EasyDBO来说,为了方便国内的用户,肯定在文件会包含一些中文说明。而默认情况下包括中文字符,格式为ANSI的build.xml文件是无法正确运行的,这应该跟本人所写的Dom4j的原因类似。
  此时,我们需要把build.xml文件改成UTF-8格式,并指定xml文件的格式为utf-8。如下面是EasyJWeb开源项目中build.xml文件的部分内容:
< ?xml version="1.0" encoding="UTF-8"?>< project name="EasyJF" default="usage" basedir="." xmlns:artifact="urn:maven-artifact-ant">
 < property file="easyjfbuild.properties" />
 < !--目录定义-->
 < property name="main.src.dir" value="${basedir}/src/main" />
 < property name="test.src.dir" value="${basedir}/src/test" />
 < property name="lib.dir" value="${basedir}/lib" />
 < property name="env.lib.dir" value="${lib.dir}/build/" />
 < property name="doc.dir" value="${basedir}/doc" />
 < property name="build.dir" value="${basedir}/build" />
 < property name="release.dir" value="${basedir}/release" />
 < property name="web.dir" value="${basedir}/webapps" />
 < property name="ide.dir" value="${basedir}/misc/ide" />
 < !--项目属性-->
 < property name="project.provider.name" value="easyjf" />
 < property name="project.name" value="jweb" />
 < property name="project.author" value="http://www.easyjf.com/" />
 < property name="project.version" value="0.6" />
 <!--发布文件名-->
….
 这里的问题是如何建一个UTF-8格式的build.xml文件。
错误的习惯:
  在通常情况下,我们习惯于使用windows下的记事本等工具直接编码xml文件内容,并另存为UTF-8格式,如下图所示:
 
  这种方式建立的build.xml文件是不正确的,最让人烦恼的是具有非常的不稳定性。这个不稳定性表现在一些系统下能正确使用,而一些系统下会出现类似如下的错误:

  D:\EasyJF\wlhy\bin>build.bat
  Buildfile: ..\build.xml
  BUILD FAILED
  D:\EasyJF\wlhy\build.xml:1: 缺少文件根组件
  Total time: 0 seconds
  请按任意键继续. . .
 
  这个错误也是EasyJF团队中的williamRaym在写EasyJWeb的build脚本时发现的,而且后来又很多网友反映类似的错误,如当前EasyJF下的iula 项目就存在这个问题:
http://www.easyjf.com/html/bbs/20060814/1208824819851986.htm
  (也许是我的机器容错性好,不会报错,呵呵!)。
  
正确的方法:
  前面说了,用记事本建立UTF-8格式的xml文件是不正确的,经过我们多次实践,正确的方法之一是使用Eclipse来建这个xml文件,在建立工程的时候需要把整个工程的字符集设置成为UTF-8,然后直接建立一个build.xml文件,默认情况下该文件以UTF-8的格式保存。
  这样建立起来的脚本文件,使用Ant的时候,不管build.xml中包含什么中文字符,都能正常运行。当然,应该还可以用其它的开发工具建立UTF-8格式的文件,还请大家来试验。另外也可以用JAVA自己写一个小程序来把ANSI格式的文件转成UTF-8文件,这样也没问题。
 
小结:
  之所以很多开源项目的build过程中不会存在问题,是因为他的脚本文件中没有包含中文字符或其它字符。面在国产开源项目中,由于存在中文注释、说明等,所以在建立build.xml文件的时候需要作一些特殊的处理,使用UTF-8格式的文件。当然,本文还重点提出了两种建立UTF-8文件的方法,其中用记事本是不稳定的,错误的;而用专业Java开发工具或JDK建立的脚本才是正确、稳定的。

 

(注:本文作者,EasyJF开源团队 大峡,转载请保留作者声明!)

 

分享到:
评论

相关推荐

    阿里设计规范AntDesign官方组件包XD.rar

    阿里设计规范AntDesign官方组件包XD是一个专门为 XD(Adobe Experience Design)用户提供的设计资源集合,旨在帮助设计师高效、一致地创建符合阿里巴巴集团UI标准的产品界面。AntDesign 是阿里巴巴开源的一套基于...

    AntDesign3.9Axure组件.zip

    《AntDesign3.9Axure组件:前端设计与原型构建的高效工具》 在现代互联网产品开发中,前端设计扮演着至关重要的角色。AntDesign3.9Axure组件的出现,为产品经理和前端设计师提供了一套高效且强大的设计工具。这个...

    ant design4.40 web组件库 ant design pro后台模板库(精细-完整)

    Ant Design 是基于 Ant Design 设计体系的 React UI 组件库,主要用于研发企业级中后台产品。 ant design4.40-web组件库 是基于Axure ,参考Ant Design 的样式而设计的一套模板库,是产品经理必备套件库,Ant Design...

    AntDesign3.9Axure组件

    《AntDesign3.9Axure组件:原型设计的利器》 在互联网产品开发流程中,原型设计是一个至关重要的环节,它能清晰地呈现产品的功能结构和交互方式,为后续的开发工作提供明确的方向。AntDesign3.9Axure组件正是这样一...

    AXURE Ant Design 4.40 - web组件库 ant design pro 后台模板 产品经理

    标题中的“AXURE Ant Design 4.40 - web组件库 ant design pro 后台模板 产品经理”指的是一款基于Axure设计工具的组件库,它整合了Ant Design Pro的4.40版本的Web界面元素和后台管理模板,特别适用于产品经理进行...

    Ant Design Library 3.0 Axure 组件库

    《Ant Design Library 3.0 与 Axure 组件库详解》 Ant Design Library 3.0 是一款专为Axure设计的组件库,旨在帮助设计师高效、精准地构建高质量的原型。Ant Design,源自阿里巴巴的前端框架,以其优雅的设计风格和...

    Ant Design 风格 Axure组件移动端 完整版.rplib

    Ant Design 风格 Axure组件移动端 完整版.rplib

    用于在vxetable表格中适配antdesignvue组件的渲染

    Ant Design Vue则是基于Vue.js实现的Ant Design设计语言的UI组件库,有着优雅的界面和强大的交互体验。将这两个库结合使用,可以创建出既美观又功能强大的数据展示和操作界面。 在"用于在vxetable表格中适配ant...

    Axure组件库ant.zip

    "Ant"在这里指的是蚂蚁金服(Ant Group)设计系统中的组件,这个组件库是专门为Axure设计的,目的是为了提升产品设计和开发团队的工作效率。 在“Axure组件库ant.zip”中,我们可以推测包含了一系列与蚂蚁金服Ant ...

    AntDesign蚂蚁金服APP移动端原型组件.rplib

    Ant Design 移动端设计规范,一个基于 Preact/React/React Native 的 UI 组件库,是 Ant Design 的移动规范的 React 实现,服务于蚂蚁及口碑无线业务。 image.png 特性 基于 Ant Design 移动设计规范。 规则化的...

    阿里设计规范AntDesign官方组件包.zip

    阿里设计规范AntDesign官方组件包是一个为前端开发者和设计师量身打造的设计系统,它源于阿里巴巴集团内部的设计实践,现已成为开源社区中广受欢迎的UI框架。AntDesign的主要目标是提供一套高效、稳定、统一的用户...

    基于antdesign的vuejsloading组件

    而Ant Design Vue是蚂蚁金服推出的一套面向企业级应用的高质量Vue组件库,它提供了丰富的UI组件,极大地提高了开发效率。在Ant Design Vue中,loading组件是一个不可或缺的部分,它通常用于显示数据加载状态,为用户...

    Ant Design Library一套精美得像视觉稿的 Axure 组件库 阿里腾讯都在用

    Ant Design Axure组件库包含了大量的预设组件,如按钮、表单、表格、导航、模态框、提示信息等,这些组件不仅样式丰富,而且遵循了Ant Design的统一设计语言,确保了设计的一致性和易用性。此外,该库还提供了丰富的...

    Ant Design for React的DatePicker日期组件设置默认显示中文的方法

    Ant Design for React 的 DatePicker 日期组件设置默认显示中文的方法 在 Ant Design for React 的 DatePicker 日期组件中,默认情况下显示英文,但是在某些情况下,我们需要将其设置为中文。今天,我们将学习如何...

    自动化打包工具 ant-1.9.1组件包大集合

    "ant-1.9.1组件包大集合"很可能是包含了Ant 1.9.1版本的各种组件和资源,便于开发者进行快速配置和使用。 Ant 的核心概念是基于XML的构建文件,通常命名为build.xml。这个文件定义了一系列的任务(tasks),这些...

    Ant design vue 的组件禁用属性 disabled.pdf

    在Ant Design Vue这一流行的前端UI库中,`disabled`属性是一个关键特性,它允许开发者禁用用户对特定组件的操作,从而实现对用户交互的控制。禁用状态通常用于表示组件处于不可操作或非活动状态,这在许多场景下都是...

    Ant design axure设计库

    标题中的"Ant design axure设计库"指的是将Ant Design的组件和样式集成了到Axure中的设计资源库。这使得原型设计师能够直接在Axure中使用Ant Design的组件,无需从头开始设计每个元素,极大地提高了设计效率和一致性...

    ant1.8.2(组件)

    1,什么是ant ant是构建工具 2,什么是构建 概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个 3,ant的好处 跨平台 --因为ant是使用java实现...

    AntDesign蚂蚁金服Web_PC原型组件.rplib

    Ant Design 源自蚂蚁金服体验技术部的后台产品开发。在中后台产品设计中,通常有很多类似的页面和控件,不同的产品会出现不同的规范和实现,给设计师和工程师带来很多困扰和重复建设,降低企业后台的整体研发效率。...

    Mac安装Ant 到usr目录下不报错

    Apache Ant 是一款强大的自动化构建工具,主要用于Java应用程序的编译、测试和部署。它通过XML配置文件定义了一系列的任务,使得开发者能够自动化执行各种构建过程。在Mac操作系统中,正确安装和配置Ant对于进行...

Global site tag (gtag.js) - Google Analytics