首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Ant ( Eclipse .之外)构建Selenium Web驱动程序java应用程序?

如何使用Ant ( Eclipse .之外)构建Selenium Web驱动程序java应用程序?
EN

Stack Overflow用户
提问于 2015-10-10 14:37:01
回答 1查看 806关注 0票数 2

首先.我是Apache Ant的新手。

我试图使用它构建一个简单的java应用程序,使用Selenium Web驱动程序库。

我从教程开始: Apache的Hello (参考文献)。( http://ant.apache.org/manual/index.html)构建一个简单的"Hello“,它还解释了如何使用外部库(在示例log4J库中.)。

一切正常..。然后,我尝试更改我的第一个构建文件,以便使用Selenium Web驱动程序库在我的java应用程序中应用它。

这是我的目录组织..。

我的java源代码位于磁盘中的另一个目录中,但这不是问题所在(我认为.)

在lib目录下,我有selenium-java-2.46.0.jar,在libs子目录下,我有所有其他的selenium库,所以.

(请注意,这不是所有图书馆的完整清单.这只是为了解释我的档案组织.)。

这是我的build.xml文件..。

代码语言:javascript
复制
<project name="Bdo" basedir="." default="main">

<property name="src.dir"     value="D:/Cesare/Lavoro/WorkspaceEclipse/TestSelenium/TestSeleniumProgetti/src/myProjects"/>
<property name="build.dir"   value="Bdo"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir"     value="${build.dir}/jar"/>
<property name="main-class"  value="myProjects.bdoTest_01"/>
<property name="lib.dir" value="lib"/>

<path id="classpath">
    <fileset dir="${lib.dir}" includes="**/*.jar"/>
</path>

<target name="clean">
    <delete dir="${build.dir}"/>
</target>

<target name="compile">
    <mkdir dir="${classes.dir}"/>
    <javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
</target>

<target name="jar" depends="compile">
    <mkdir dir="${jar.dir}"/>
    <jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
        <manifest>
            <attribute name="Class-Path" value="../../${lib.dir}/selenium-java-2.46.0.jar ../../${lib.dir}/libs/apache-mime4j-0.6.jar ../../${lib.dir}/libs/bsh-1.3.0.jar ../../${lib.dir}/cglib-nodep-2.1_3.jar ../../${lib.dir}/libs/commons-codec-1.10.jar  ../../${lib.dir}/libs/commons-collections-3.2.1.jar ../../${lib.dir}/commons-exec-1.3.jar ../../${lib.dir}/commons-io-2.4.jar ../../${lib.dir}/libs/commons-lang3-3.4.jar  ../../${lib.dir}/libs/commons-logging-1.1.3.jar ../../${lib.dir}/cssparser-0.9.16.jar ../../${lib.dir}/gson-2.3.1.jar ../../${lib.dir}/libs/guava-18.0.jar  ../../${lib.dir}/libs/hamcrest-core-1.3.jar ../../${lib.dir}/hamcrest-library-1.3.jar ../../${lib.dir}/htmlunit-2.17.jar ../../${lib.dir}/libs/htmlunit-core-js-2.17.jar  ../../${lib.dir}/libs/httpclient-4.4.1.jar ../../${lib.dir}/httpcore-4.4.1.jar ../../${lib.dir}/httpmime-4.4.1.jar ../../${lib.dir}/libs/jcommander-1.29.jar  ../../${lib.dir}/libs/jetty-io-9.2.11.v20150529.jar ../../${lib.dir}/jetty-util-9.2.11.v20150529.jar ../../${lib.dir}/jna-4.1.0.jar ../../${lib.dir}/libs/jna-platform-4.1.0.jar  ../../${lib.dir}/libs/junit-dep-4.11.jar ../../${lib.dir}/nekohtml-1.9.22.jar ../../${lib.dir}/netty-3.5.7.Final.jar ../../${lib.dir}/libs/phantomjsdriver-1.2.1.jar  ../../${lib.dir}/libs/sac-1.3.jar ../../${lib.dir}/serializer-2.7.2.jar ../../${lib.dir}/testng-6.8.5.jar ../../${lib.dir}/libs/websocket-api-9.2.11.v20150529.jar  ../../${lib.dir}/libs/websocket-client-9.2.11.v20150529.jar ../../${lib.dir}/websocket-common-9.2.11.v20150529.jar ../../${lib.dir}/xalan-2.7.2.jar ../../${lib.dir}/libs/xercesImpl-2.11.0.jar  ../../${lib.dir}/libs/xml-apis-1.4.01.jar "/>            
            <attribute name="Main-Class" value="${main-class}"/>
        </manifest>
    </jar>
</target>

<target name="run" depends="jar">
    <java fork="true" classname="${main-class}">
        <classpath>
            <path refid="classpath"/>
            <path location="${jar.dir}/${ant.project.name}.jar"/>
        </classpath>
    </java>
</target>

<target name="clean-build" depends="clean,jar"/>

<target name="main" depends="clean,run"/>

当我执行命令时

代码语言:javascript
复制
ant run

一切都很好,我可以看到我的应用程序.

当我尝试使用以下命令执行jar时

代码语言:javascript
复制
java -jar Bdo.jar

我有以下错误

我认为ClassPath出了点问题,但似乎所有的库路径都很好.

有什么建议吗?

提前谢谢你!

塞萨尔

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-10 19:52:35

类路径中的某些路径不包含libs目录。gson-2.3.1.jar就是这样的路径之一。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33055143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档