Eclipse、WebSphere7.0、Maven:AspectJ在热部署期间不编写代码
我的系统信息:Eclipse、WebSphere7.0、Maven:AspectJ在热部署期间不编写代码,websphere,maven-3,aspectj,myeclipse,Websphere,Maven 3,Aspectj,Myeclipse,我的系统信息: IDE: Eclipse Blue 10.0, Server: Websphere 7.0 Build Management Tool: Maven 3.0 我使用以下配置在Maven项目中执行编译时编织: <properties> <maven.compiler.source>1.6</maven.compiler.source> <maven.compiler.target>1.
IDE: Eclipse Blue 10.0,
Server: Websphere 7.0
Build Management Tool: Maven 3.0
我使用以下配置在Maven项目中执行编译时编织:
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<!-- <goal>test-compile</goal> -->
</goals>
</execution>
</executions>
<configuration>
<aspectLibraries>
<aspectLibrary>
<groupId>com.xxx.logger</groupId>
<artifactId>my-aspect-logger</artifactId>
</aspectLibrary>
</aspectLibraries>
<showWeaveInfo>true</showWeaveInfo>
<outxml>true</outxml>
<Xlint>warning</Xlint>
<verbose>true</verbose>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
</configuration>
</plugin>
</plugins>
</build>
我面临的一个问题是,每当我更改java类时,这些类都会在服务器中编译和热部署。但是,它们不是重新编织的。但是,如果我删除EAR,从命令提示符构建我的项目并重新部署它,它就会正常工作
有人能帮我解决这个问题吗。我不熟悉AspectJ,但MyEclipse不执行maven目标来构建和部署项目(尽管您可以添加构建器,这可能会在外部调用maven-注意maven项目构建器不执行maven目标),因此,pom中指定的处理不会自动执行,不过,显然,您可以从RunAs菜单项运行maven目标。因此,更改后的Java类将使用配置的JRE重新编译并重新部署。pom中指定的任何附加处理都不会运行。但是,您说删除部署然后重新部署实际上是可行的,因此如果在重新部署之前不执行maven构建,我不确定重新编织是如何完成的。我已经更正了我的陈述“但是如果我删除EAR,从命令提示符构建项目并重新部署它,那么它就会正常工作”。有没有办法定义,每当我在eclipse中更改代码时,都应该在热部署之前执行maven目标。这样我的代码就可以按照pom.xml中提到的配置进行编织了?对不起,我错过了这条评论。您应该探索添加构建器的可能性(右键单击项目,选择“属性”,然后选择“构建器”)。您可以创建一个新的Ant builder,运行一个外部程序(例如maven),或者从您的工作区导入一个启动配置(可能是maven启动配置)。这是一个标准的eclipse特性,因此您可以在一个以eclipse为中心的站点上找到有关执行此操作的信息。
Windows > Show View > Servers > WebSphere 7 > Right Click > Add Deployment