草庐IT

b-Class-Interface

全部标签

java - Ant JUnit Batchtest .java 或 .class

我看到一些链接似乎暗示可以从.java文件而不是.class执行JUnit测试例如代替第一个例子是否有效?由于ClassNotFoundExceptions,我无法让它工作 最佳答案 我同意上面的评论,看起来标签允许.java或.class。我做了一个小测试,当我用这个设置运行测试时-dir=somefolder,然后使用当指向的文件夹包含类文件时,Ant基本上将有一个空文件集来处理*Test.java,但是当使用时然后文件集不为空,测试用例将运行。这是我快速测试的结果。据我所知,您似乎需要指定*Test.class来获取测试用例。

java - JAX-RS 资源错误 : Couldn't find JAX-B element for class java. lang.String 和更多异常

当我对来自JavaEE7SDK示例“async-chat”的其余资源“queue”执行OPTIONS调用时,当Jersey的日志级别设置为FINE(org.glassfish.jersey.level=很好)。同样的异常发生在我的代码中,如下所示。两个应用程序都可以正常运行。这些异常是否无关紧要(只是在日志记录级别为FINE时抛出)?如果不是,为什么会被抛出?我测试了多个GlassFish4安装以及GlassFish4.0.1。他们都表现出相同的行为。异常(exception)情况:Manyofthoseentries:FINE:Couldn'tfindJAX-Belementforc

java - 使 "class"成为 transient 或可序列化但该类是可序列化的

在检查我的代码后,SonarQube5.1标记了很多关键问题。但是类本身和字段中的引用类也是可序列化的。被引用类通过类继承可序列化接口(interface)。这是我的例子publicclassAimplementsSerializable{privateBb;//->Sonarcubemarkesthisfieldasnotserialzable}B类定义如下publicclassBextendsC{....}C类定义如下publicabstractclassCextendsD{....}定义了类DpublicabstractclassDimplementsSerializable{.

java - 创建类路径资源中定义的名称为 'liquibase' 的 bean 时出错 .../config/DatabaseConfiguration.class

在我的jHipster项目上启动嵌入式Tomcat时,我遇到了这个烦人的错误。花了很多时间试图解决它,但无法弄清楚为什么会这样。它是在从主要代表更新项目后开始发生的,但我也实现了自定义存储库。堆栈跟踪:DEBUG]uk.co.config.DatabaseConfiguration-ConfiguringLiquibase[WARN]org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext-Exceptionencounteredduringcontextinitial

java - 同一接口(interface)的Spring多重实现

我有一个接口(interface)和这个接口(interface)的多个实现类,大约有10个。我有一个像prefix+name+suffix这样的命名约定所以在运行时,我可以添加@AutowiredprivateMapmyImplementations;然后使用myImplementations.get()访问实现类方法。有没有更好的方法来访问这些实现?我只知道哪个暗示。我在运行时需要,更改取决于我收到的消息。 最佳答案 你可以实现BeanFactoryAware类中的接口(interface),然后使用注入(inject)的bea

java - Myclass.class.getProtectionDomain().getCodeSource() 返回空路径

我正在尝试使用以下方法查找正在运行的jar文件的位置:FilejarFile=newFile(JarPath.class.getProtectionDomain().getCodeSource().getLocation().toURI());当我在IDE(eclipse)上运行它时,它会返回正确的路径。但是当我将jar作为可执行文件运行时,返回的代码源是rsrc:./关于如何获得正确路径的想法? 最佳答案 尝试不同的方法来获取位置。StringjarFilePath=ClassLoader.getSystemClassLoader

java - 使用方法引用和原始类型的函数接口(interface)特化的重载解析

假设我们有一个类和一个重载函数:publicclassMain{staticfinalclassA{}publicstaticStringg(ToIntFunctionf){returnnull;}publicstaticStringg(ToDoubleFunctionf){returnnull;}}我想用一个方法引用来调用g,方法引用类型为A->int的函数:publicclassMain{staticfinalclassA{}publicstaticStringg(ToIntFunctionf){returnnull;}publicstaticStringg(ToDoubleFun

java - 为什么是 Class.forName ("BumpTest"),而不是 BumpTest.class?

在JLSSec8.4.3.6,synchronizedmethods,它说:classBumpTest{//...staticsynchronizedvoidclassBump(){classCount++;}}hasexactlythesameeffectas:classBumpTest{//...staticvoidclassBump(){try{synchronized(Class.forName("BumpTest")){classCount++;}}catch(ClassNotFoundExceptione){}}}这对我来说很奇怪,更不用说过于复杂了:为什么使用Class.

接口(interface) : from which modules are they invoked? 中的 Java 9 默认方法

假设您有模块A和模块B。ModuleA定义了一个接口(interface)(例如用于服务),而ModuleB有一个实现该接口(interface)(提供服务)的具体类。现在,如果接口(interface)有一个默认方法,并且您在moduleB中的类上调用它(从另一个模块),这个调用是否应该在moduleA或moduleB中执行?显然它来自moduleA...原因是什么?示例:假设您有这样的代码:InputStreamis=this.getClass().getResourceAsStream(fullPath);如果此代码位于moduleB中服务的实现中,则流将被打开。但是如果代码位于

java - 使用继承与接口(interface)的装饰器设计模式

我想使用继承(DecoratorextendsComponent)实现Decorator设计模式,因为我需要访问Component类的protected字段/方法。问题在于Component类代表一种算法,它在构造时执行一些预处理并保存大量数据。现在,每次我要装饰一个组件时,我都会创建一个新的Decorator实例,这将需要构建一个新的(无用的)组件实例来执行不需要的计算并保存不需要的数据。我想使用接口(interface)而不是继承,但我将无法访问组件的protected信息。扩展Component类时我担心资源浪费是否正确?如果是这样,我如何才能在不失去对我需要的信息的访问权的情况