【问题标题】:How to script the "Convert to AspectJ" action when creating a new Eclipse project?创建新的 Eclipse 项目时如何编写“转换为 AspectJ”操作的脚本?
【发布时间】:2011-03-27 22:43:39
【问题描述】:

我有一个命令行脚本,可以为我创建一个(主要是)现成的 Eclipse 项目。它使用 Maven 的 eclipse 插件,并有一些其他的脚本步骤,例如将我们的代码标准设置从我们的 repo 复制到 .settings。这非常方便,因为我需要经常从这个模板启动新项目。 (用于分支工作、一次性开发实验等)

但该项目使用 AspectJ。我不知道如何自动告诉 Eclipse 它需要“转换为 AspectJ”,所以每次创建新项目时我都必须在 Eclipse 中手动执行此操作。

有没有办法从命令行配置 Eclipse 项目以将其视为 AspectJ 项目?我正在使用 Eclipse 3.4.2 和 AspectJ 插件 2.0.0。

【问题讨论】:

    标签: eclipse maven-2 aspectj ajdt


    【解决方案1】:

    您需要在 maven poms 中进行此配置(请参阅 maven eclipse plugin: adding additional project natures

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <additionalProjectnatures>
            <projectnature>org.eclipse.ajdt.ui.ajnature</projectnature>
          </additionalProjectnatures>
          <additionalBuildcommands>
            <buildcommand>org.eclipse.ajdt.core.ajbuilder</buildcommand>
          </additionalBuildcommands>
        </configuration>
      </plugin>
    

    这将自动激活 AJDT builder 和 nature,但我认为没有办法通过命令行指定它。但这至少解决了部分问题。

    【讨论】:

      【解决方案2】:

      您需要更改 .project 文件以及 .classpath 文件。

      您的 .project 文件应如下所示:

      <?xml version="1.0" encoding="UTF-8"?>
      <projectDescription>
      <name>my.project.name</name>
      <comment></comment>
      <projects>
      </projects>
      <buildSpec>
          <buildCommand>
              <name>org.eclipse.ajdt.core.ajbuilder</name>
              <arguments>
              </arguments>
          </buildCommand>
      </buildSpec>
      <natures>
          <nature>org.eclipse.ajdt.ui.ajnature</nature>
          <nature>org.eclipse.jdt.core.javanature</nature>
      </natures>
      </projectDescription>
      

      在您的 .classpath 中,您需要包含 AspectJ 运行时,您可以通过添加以下行来完成:

      <classpathentry kind="con" path="org.eclipse.ajdt.core.ASPECTJRT_CONTAINER"/>
      

      这一切都假设您正在创建一个简单的项目并且不包含任何 maven 支持。根据您的问题,我有点不确定您到底在寻找什么。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-08-12
        • 1970-01-01
        • 2019-06-21
        • 2011-10-19
        • 2010-11-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多