问题标签 [compile-time-weaving]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2516 浏览

maven-2 - 从 Maven 命令行界面切换到 Eclipse 插件

我正在开发一个使用 maven 构建的项目,以便在编译时编织 AspectJ 注释。到目前为止,它是这样工作的:

1)在eclipse中关闭“自动构建”

2) 在 Eclipse 中更改代码

3)在命令行导航到项目文件夹

4) 从命令行运行 Maven

5) 在 Eclipse 中刷新

6)在Eclipse中运行程序

由于存在用于 Maven 集成的 Eclipse 插件,我想弄清楚如何使用它们来简化这个过程。但是,我只找到了关于如何使用该插件开始一个新的 Maven 项目的说明——在任何关于转换现有项目的教程或文档中都没有。我需要重新导入我的项目吗?或者,还有更好的方法?

0 投票
2 回答
946 浏览

scala - AspectJ 编译时编织和 Scala

是否有可能有一个 Scala Maven 项目并在编译时在 Scala 类中编织 AspectJ 方面?

我已经能够让加载时编织工作,但到目前为止编译时没有成功。

这些方面根本没有融入到 Scala 类中。据我了解,编译时编织需要特定的 Java 编译器(AspectJ Compiler aka ajc)。据我了解,ajc 无法编译 Scala。

Scala 是否有等效的 ajc?或者也许是另一种让编译时编织与 Scala 一起工作的方法?

0 投票
1 回答
1304 浏览

mvvm - PropertyChanged.Fody 迁移 notifypropertychanged

我一直在使用 NotifyProperyWeaver,并注意到它在使用 PropertyChanged.Fody 的 Fody 的最新版本中已被弃用。

我让 NotifyProperyWeaver 只编织我有属性的属性,并且所有其他通知都被禁用。

有没有办法配置 PropertyChanged.Fody 使得只有 [attributed] 属性被编织?而不是相反。我在上面的文档页面中没有看到任何信息,FodyWeavers.xml 中是否有隐藏属性

0 投票
2 回答
521 浏览

maven - Junit 由于 Aspect 而失败

我有一个基于注释的自定义安全框架。当遇到方法的安全注释时,我使用 aspectj maven 插件来编织方面。

我使用 jenkins 来构建项目,并且为编译设置了 aspectj maven 插件目标,如下所示。

当junit运行时出现问题。由于它已经在方法中编织了与安全相关的注释,因此单元测试失败。

有没有办法让junits工作然后进行aspectj编织?由于我单独使用 .aj 文件,我不确定如何设置加载时间编织。

对此的任何帮助表示赞赏。

问候

0 投票
1 回答
999 浏览

spring - Spring编译时编织事务回滚

我正在尝试Aspectj Compile Time WeavingSpring. 但是,在添加mode="aspectj"到之后tx:annotation-driven,事务都失败了,因此没有实体存储在数据库中。

这是我的配置的相关部分:

我在 /META-INF 中也有一个 aop.xml(但不确定是否需要该文件)

一些备注:

  • 由于我正在使用的环境,我坚持使用 CTW(所以没有 LTW)。
  • @PersistenceContext用来获取EntityManager
  • 在 tx:annotation-driven 中没有 mode="aspectj" 事务运行良好
  • 我没有使用Spring MVC
  • 我正在使用 GWT 2.5

编辑:

我的项目有一个Maven性质,我也必须添加这个插件。但我使用Eclipse和运行应用程序Google Plugin。我将项目运行为A Web Application (google plugin). 我不确定这段代码Maven是否正确初始化......

0 投票
1 回答
1358 浏览

spring - 编译时编织空指针异常

编辑 7:

问题似乎是如何@Configurable使用HttpSessionListener,建议使用解决方法,但我不想WebApplicationContext直接与:

编辑6:

我简化了示例项目:您现在可以从 CLI 运行它

  1. 下载解压项目:http ://www.2shared.com/file/KpS5xeqf/dynatable.html
  2. 运行 mvn clean aspectj:compile
  3. 运行 mvn gwt:run
  4. 您应该在 CLI 中看到“为什么这里的消费者为 NULL?” 被打印。
  5. 期望的是:cunsumer 不是 NULL!

快结束了:D

编辑 5:GWT 中的示例项目:请在 GWT 开发模式下运行它

http://www.2shared.com/file/eai0PV-5/dynatable.html

您将在 sessionCreated() 获得 NPE

运行要求是 maven + gwt 2.5

编辑4:

示例项目似乎不是一个很有代表性的项目。我应该重新表述问题:

在 Eclipse 中,当我将项目作为 Web 应用程序运行时,我使用 GWT 开发模式。在某种程度上,这不会调用 aspectj 编译器。至少这是我能想到的唯一原因。

问题:如何设置编译时间编织以作为 Web 应用程序运行(GWT 开发模式)。?

编辑3:

我在Eclipse 4.2.1、M2e 1.4.0、STS 3.1.0、AJDT 2.2.2中制作了一个小示例项目来演示该问题:http ://www.2shared.com/file/WZ1T9l9-/autowired.html

编辑2:

正如其他类似主题所建议的那样,我采用了标准生成Roo项目的插件以避免版本冲突。还没有成功。(更新了上面的 org.codehaus.mojo)

编辑1:

我不确定这是否正常,但是当我启动 Web 应用程序时,我得到了很长的关于 spring 正在做什么的日志,但没有提到任何编织/与 Aspectj 相关的任何内容......

我认为问题与 pom.xml 中的这个插件没有被编译有关,因为我在控制台中没有得到任何反馈(我尝试了许多其他类似的插件,但没有任何工作)当我运行网络时似乎从未调用过该插件应用:

原帖:

我一直在搜索 stackoverflow 和许多其他资源,但他们的标准解决方案都没有帮助我找到为什么一个@autowired字段Null Pointer Exception (NPE)在访问时会屈服。

A类声明如下:

我的应用程序上下文具有相关部分:

所有必要的库都在那里。我使用 Spring 3.0.2。由于我的环境,我只能使用编译时编织。我还使用 Google 插件启动 GWT 开发模式。我正在使用ADJTSpring Tool Suite和。我还为 m2e v1.0 安装了 AJDT 配置器。m2EclipseGoogle Plugin

0 投票
0 回答
506 浏览

spring - 错误消息:无法要求参数化非泛型类型的成员

我的设置是 vaadin、mybatis 和 spring。现在我将 spring 与 vaadin 与 vaadin 教程集成在一起,一切都很完美。但是,当我在带有 Property.ValueChangeEvent 方法的自定义组件上使用 @Configurable(preConstruction = true) 时,我从 aspectj 得到了编译时的下一个错误。

对此有已知的解决方案吗?

0 投票
1 回答
306 浏览

jakarta-ee - 类加载器中的 Glassfish 4.0 安全异常

我的设置包括 Glassfish 4、一个 MySQL 数据库、作为 JPA 提供程序的 Eclipse-Link 2.5。为了从延迟获取和加载组中获利,我静态地编织了我的实体类。

现在我在启动独立客户端时收到以下错误:

我的类路径中的库是(除其他外):

  • gf-client.jar
  • 安全.jar
  • javaee-api-7.0.jar
  • eclipselink.jar

有人知道如何解决安全异常吗?

非常感谢提前 - 亲切的问候!

0 投票
1 回答
94 浏览

constructor - postsharp 3 引入/删除构造函数方面

我正在评估 Postsharp 3.0,想知道是否有办法引入和/或删除构造函数。

用例是删除所有公共无参数构造函数,并引入一个私有无参数构造函数。

提前致谢,

卡万

0 投票
2 回答
3557 浏览

spring - 非弹簧管理类中 DI 的编译时间编织

我想为标有@Configurable注释的类配置编译时编织,以便能够将 spring 依赖项注入到使用new运算符 instatiated 的类中。我不想使用加载时编织,因为我无权运行应用程序服务器的脚本,所以我无法修改它。另外我希望能够在测试中使用这些类,我的意思是从 IDE 运行测试用例。我只找到了关于 web 和 spring 参考上的加载时间编织的信息,而没有关于编译时编织的配置的信息。

PS。我在 Maven 中使用 spring