5

我有一个使用编译时编织方面的项目。这个项目依赖于另一个项目,它是一个包含为 jar 的项目。我想在编译时在 jar 文件中编织一个类。我怎样才能做到这一点。

谢谢

4

2 回答 2

6

这个jar需要添加到正在编译的项目的inpath中。结果将是一组新的类文件。这些新的类文件是编织的,应该在运行时使用而不是原来的 jar。

如何设置 in 路径取决于您如何编译代码:

  1. 在 Eclipse/AJDT 中,您可以在 AspectJ Build 项目属性页面上设置 in 路径。在这里,您还可以设置一个 in-path out 文件夹来为这些类文件指定一个特殊位置。
  2. 从 ant 使用 iajc 任务,您可以使用 inpath 属性。有关更多信息,请参见此处:http: //www.eclipse.org/aspectj/doc/released/devguide/antTasks-iajc.html
  3. 使用 ajc 命令时,请使用该-inpath选项。请参阅此处http://www.eclipse.org/aspectj/doc/released/devguide/ajc-ref.html

棘手的部分是要记住避免在正在运行的应用程序中使用原始罐子,而是使用编织罐子。

于 2011-01-31T16:37:00.050 回答
4

如果你使用 maven,你也可以使用 aspectj-maven-plugin。它适用于 eclipse (m2e)。

在插件中,只需在 configuration/weaveDependencies/weaveDepedency 中指定依赖 jar 的 groupId/artifactId。

http://mojo.codehaus.org/aspectj-maven-plugin/weaveJars.html

于 2012-03-27T01:49:14.700 回答