我正在尝试使用wlst进行本地weblogic部署。我创建了一个build.xml,build.properties文件和一个简单的wlst脚本。我已经从命令行测试了脚本,并且效果很好。但是,我很难从我的ant文件中执行它。

build.xml

<project default="ListLibraries" name="WLST project">
<property file="build.properties" />

<taskdef name="wlst" classname="weblogic.ant.taskdefs.management.WLSTTask" classpathref="${weblogic.classpath.id}" />

  <target name="ListLibraries">
      <wlst fileName="${wlst.script.source}/ListLibraries.py" classpathref="${weblogic.classpath.id}" />
  </target>

</project>


build.properties

# Weblogic specific dirs
weblogic.home.dir=/Users/me/Oracle/Middleware/wlserver_10.3
weblogic.bin.dir=${weblogic.home.dir}/common/bin
weblogic.lib.dir=${weblogic.home.dir}/server/lib
weblogic.classpath.id=${weblogic.lib.dir}/weblogic.jar

#workspace dirs
wlst.script.source=/Users/me/workspaces/python/wls_config


这是我看到的:

$ ant Buildfile: /Users/me/workspaces/java/myarrow/local/build.xml

BUILD FAILED /Users/me/workspaces/java/myarrow/local/build.xml:4: Reference /Users/me/Oracle/Middleware/wlserver_10.3/server/lib/weblogic.jar not found.

Total time: 0 seconds

Blockquote


但是,该weblogic.jar确实存在:

$ ls -la /Users/me/Oracle/Middleware/wlserver_10.3/server/lib/weblogic.jar
-rwxrwxrw-  1 a84055  my\Domain Users  36339849 Feb 13 15:45 /Users/me/Oracle/Middleware/wlserver_10.3/server/lib/weblogic.jar


我在这里想念什么?可能就在我眼前。

最佳答案

classpathref期望引用的是路径,而不是物理路径。尝试使用classpath代替:

<taskdef name="wlst" classname="weblogic.ant.taskdefs.management.WLSTTask"
                     classpath="${weblogic.classpath.id}" />


有关使用这两个属性的示例,请参见https://ant.apache.org/manual/Tasks/typedef.html

使用classpathref,您需要首先创建参考:

<path id="weblogic.lib.path">
  <fileset file="${weblogic.classpath.id}"/>
</path>

<taskdef name="wlst" classname="weblogic.ant.taskdefs.management.WLSTTask"
                     classpathref="weblogic.lib.path" />

关于java - WLST ant任务未找到classpathref,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42541305/

10-09 20:24