Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 类文件夹,而不是Jetty配置中的JAR_Java_Ant_Jetty - Fatal编程技术网

Java 类文件夹,而不是Jetty配置中的JAR

Java 类文件夹,而不是Jetty配置中的JAR,java,ant,jetty,Java,Ant,Jetty,我正在将我们的web应用程序从Tomcat7迁移到Jetty 9。Ant任务用于Jetty启动。Jar文件位于WEB-INF/lib下,类文件位于.build/classes下 问题是:在执行注释扫描时,有没有办法指定包含类文件而不是JAR的文件夹 下面是正在使用的Ant目标配置: <target name="jetty.run"> <jetty.run tempDirectory="jetty-temp"> <webApp war="app

我正在将我们的web应用程序从Tomcat7迁移到Jetty 9。Ant任务用于Jetty启动。Jar文件位于WEB-INF/lib下,类文件位于.build/classes下

问题是:在执行注释扫描时,有没有办法指定包含类文件而不是JAR的文件夹

下面是正在使用的Ant目标配置:

  <target name="jetty.run">
    <jetty.run tempDirectory="jetty-temp">
      <webApp war="app" contextpath="/">
        <attributes>
          <attribute name="org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern" value=".*/.*jsp-api-[^/]*\.jar$|.*/.*jsp-[^/]*\.jar$|.*/.*taglibs[^/]*\.jar$"/>
          <attribute name="org.eclipse.jetty.server.webapp.WebInfIncludeJarPattern" value=".*classes.*"/>
        </attributes>
        <classes dir=".build/classes">
          <include name="**/*.class" />
        </classes>
        <!--<lib dir=".build/classes">
          <include name="**/*.class" />
        </lib>-->
      </webApp>
      <connectors>
        <connector port="8090"/>
        <connector port="80"/>
      </connectors>
    </jetty.run>
  </target>

我已经尝试指定classes元素,但它似乎被忽略了(.build文件夹位于build.xml所在的同一位置)。因此,必须构建应用程序代码jar并将其复制到WEB-INF/lib,以便应用程序能够正确启动

JAR驻留在一个标准位置,但类不驻留。这会导致这种情况吗

如果有任何帮助,我将不胜感激

谢谢,
维塔利。

我认为你应该在jetty上为此打开一个bug:

jetty-ant集成将在类路径中添加注释,但不幸的是,它不会扫描注释

如果您升级到jetty-9.1.0.M0,那么您可以尝试将classes dir指定为,因为我们使用以下错误在extraClasspath上实现了注释扫描:。但是请注意,正如Joakim所说,dir名称不能以“.”开头,因为这表示隐藏目录

问候
Jan

我认为你应该在jetty上为此打开一个bug:

jetty-ant集成将在类路径中添加注释,但不幸的是,它不会扫描注释

如果您升级到jetty-9.1.0.M0,那么您可以尝试将classes dir指定为,因为我们使用以下错误在extraClasspath上实现了注释扫描:。但是请注意,正如Joakim所说,dir名称不能以“.”开头,因为这表示隐藏目录

问候
Jan

这可能是因为jetty从注释扫描中排除了以
开头的目录,因为它们被视为隐藏目录。哦,我明白了。谢谢我会将其重命名为build(只是我们将此文件夹用于Eclipse编译类,但这不会是一个问题)。这可能是因为jetty从注释扫描中排除了以
开头的目录,因为它们被视为隐藏目录。哦,我明白了。谢谢我将把它重命名为build(只是我们将这个文件夹用于Eclipse编译类,但这不会是一个问题)。我认为现在我将坚持jar编译,并将重命名.build-to-build。并将等待Jetty 9.1最终版本。再次感谢你,维塔利。谢谢你的帮助。我认为现在我将坚持jar编译,并将重命名.build-to-build。并将等待Jetty 9.1最终版本。再次感谢你,维塔利。