问题标签 [reflections]

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 回答
799 浏览

reflections - 使用 google 反射加载资源文件

我正在开发一个 JavaFX 项目,我的项目结构如下。

这是我的图片

我想使用 Google Refletions加载*fxml文件/src/main/java/resources/view/primary/src/main/java/windchimes.ui/WindChimesApplication.java我尝试使用以下代码

当我运行上面的代码片段时,java会抛出以下异常

294) 在 com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) 引起:java.lang.NoSuchMethodError: com.google.common.cache.CacheBuilder.maximumSize(I)Lcom/google/普通/缓存/CacheBuilder;在 org.reflections.adapters.JavassistAdapter.(JavassistAdapter.java:28) 在 org.reflections.util.ConfigurationBuilder.(ConfigurationBuilder.java:41) 在 org.reflections.Reflections$1.(Reflections.java:134) 在 org. org.reflections.Reflections.(Reflections.java:117) 上的反射.Reflections.(Reflections.java:134) windchimes.ui.WindChimesApplication.(WindChimesApplication.java:27) ... 还有 10 个 maximumSize(I)Lcom/google/common/cache/CacheBuilder;在 org.reflections.adapters.JavassistAdapter.(JavassistAdapter.java:28) 在 org.reflections.util.ConfigurationBuilder.(ConfigurationBuilder.java:41) 在 org.reflections.Reflections$1.(Reflections.java:134) 在 org. org.reflections.Reflections.(Reflections.java:117) 上的反射.Reflections.(Reflections.java:134) windchimes.ui.WindChimesApplication.(WindChimesApplication.java:27) ... 还有 10 个 maximumSize(I)Lcom/google/common/cache/CacheBuilder;在 org.reflections.adapters.JavassistAdapter.(JavassistAdapter.java:28) 在 org.reflections.util.ConfigurationBuilder.(ConfigurationBuilder.java:41) 在 org.reflections.Reflections$1.(Reflections.java:134) 在 org. org.reflections.Reflections.(Reflections.java:117) 上的反射.Reflections.(Reflections.java:134) windchimes.ui.WindChimesApplication.(WindChimesApplication.java:27) ... 还有 10 个

我确信我没有根据我的用例创建反射对象。有人可以帮我吗 ?

0 投票
2 回答
251 浏览

java - 等效于在 java 中使用 @Autowired 接口

我有一个接口 ITestClass ..并且有实现 ItestClass 的方法 ..如果我在 spring 中使用 @Autowired ITestClass itestClass,spring 将找到实现的类并在运行时从该类调用相应的方法 ..这怎么可能没有弹簧,也没有使用反射..

0 投票
1 回答
1647 浏览

java - 如何使用谷歌反射动态扫描带注释的类?

对此。_ 我正在制作一个休眠演示,我想在其中动态映射所有 POJO 类。我找到了上面给出的参考,并尝试仅从包映射中扫描我的类。但它给出了一些错误,例如:

当我添加com.google.common_1.0.0.201004262004.jar我得到了这个:

我无法在那里提问或发表评论,这就是为什么我在这里专门向@MartinAubele、@Jonathan、@SergeyBrunov、@ArthurRonald 提问。请举例说明我可以使用 google-reflections 扫描我的包裹。

注意:我不想使用 Spring。所以请不要提出这个建议。提前致谢。

一些代码示例:

另一个问题是: configuration.buildSessionFactory(); 不允许我使用 configuration.buildSessionFactory(serviceRegistry);

0 投票
0 回答
86 浏览

java - Google-Reflections:什么时候应该使用反射库?以及如何从表元数据创建动态 POJO?

我是一个冬眠学习者。当我研究如何在仅提供表和模式名称时制作动态 POJO 类时,我开始了解google-reflections库,即

这个元数据帮助我生成 POJO:

但现在我需要用休眠配置映射那些动态创建的 POJO。所以我的问题来了: 1. 我可以使用反射库吗?2. 怎么做?3.如果没有,除了为每个类创建.hbm.xml文件外,还有其他解决方案吗?

请帮忙。提前致谢。

更新 :

我有一个想法,但我不知道它会如何工作。想法: 我将为每个类动态创建 .hbm.xml 文件,并将这些类的包映射到 hibernate.cfg.xml 中。

但是1.我不知道如何通过包映射来扫描映射文件。2.我什至不知道这是否可能,如果可能,那么如何?

0 投票
1 回答
286 浏览

android - Java 反射不适用于 Android 即时运行

我正在编写一些使用 java 反射的代码。我正在使用这种方法扫描我的包中的某个类:

最近我升级了我的Gradle版本以2.1.0尝试即时运行功能,但我注意到我的应用程序包通常String[]从这个方法返回空,并且这个方法只返回一个包内的类名称com.android.tools.fd.*

为什么我在我的应用程序包中看不到类?!

0 投票
2 回答
1677 浏览

maven - Google Reflections & Maven - 在 Maven 中找不到数据,但在 IDE 中工作

问题

简单流程请求: 查找中的所有扩展名List.classjava.util

这是我正在使用的来源:

很简单,对吧?

它适用于 IntelliJ IDEA 和 Eclipse,但当我通过 Maven 运行测试时它不起作用。我尝试使用org.reflections.util.ConfigurationBuilder's 提供的方法添加东西来添加 URL 和过滤包名称,但没有运气。

有什么建议么?

我浏览了这篇文章,但无法正常工作:“使用反射谷歌库的单元测试仅在由 Maven 执行时失败

代码

pom.xml

示例.java

SampleTest.java

输出

在 IDE 中工作 在 IDE 中工作的示例

Maven 输出

并行错误

Code public void testSample() { Class[] dataTypes = { ArrayList.class, LinkedList.class, List.class, AbstractList.class, Collection.class, Map.class, Properties.class };

Maven Output

java.lang.IllegalStateException: java.lang.IllegalStateException: zip file closed

0 投票
2 回答
54 浏览

java - 配置接口以与框架一起使用

我目前正在开发一个框架,我将在其中提供一个接口,用户应在其应用程序中实现该接口以用于配置目的。用户应该能够实现一个getTargetUsername()将在框架端使用的。

我想要达到的目标几乎就是Togglez所做的:

我的问题是我正在努力寻找我应该如何查找实现我的配置接口的类。并调用getTargetUsername()框架内的方法。


到目前为止我已经尝试过:

我目前正在尝试使用 来解决问题Reflections,但我不确定这是正确的方法,因为我不知道这是否只在我的框架包中查找,或者它会在将其添加为的项目中搜索依赖。

我能够使用上面的代码获得正确的类,但我实际上不能调用getTargetUsername().

0 投票
0 回答
613 浏览

java - 查找标有特定值注释的类

我正在使用这个 Java Reflections API,到目前为止我发现它非常方便:

https://github.com/ronmamo/reflections

查找所有标有特定注释的类非常容易,但是,我不知道如何在扫描仪中添加过滤器来检索以某种方式配置了该注释的类。

例如,如果我有三个类:

我可以通过扫描 @Important 注释来获得所有三个类,但是如何将其限制为仅 @Important(level=high) ?

谢谢

0 投票
1 回答
1952 浏览

java - 扫描测试类的配置反射

使用Reflections库,我编写了一个简单的实用程序类,它索引所有测试方法及其注释。反射库可以帮助我:

如果我的实用程序类位于源根 ( src/main/java) 中,它会按预期找到所有测试方法。

但是,如果它位于测试根 ( src/test/java) 中,则它找不到任何测试方法。

我应该如何为反射定义 ConfigurationBuilder 以便它适用于后一种情况?

0 投票
1 回答
1545 浏览

java - 如何使用反射库获取子类型的子类型

这是我的场景,我有三个类:

我的编译器抱怨以下类型:

我该怎么做?