package-info.java用于Spring组件扫描

时间:2016-02-29 22:23:59

标签: java spring dependency-injection

我需要为Spring组件自动扫描定义一个根包。

我不喜欢将包名称定义为非类型安全字符串。目前,我将人工空Scannable标记接口放在我的包的根目录中,并以类型安全的方式在Spring @ComponentScan注释中使用它。

但为了同一目的,是否可以在package-info.java注释中以某种方式使用@ComponentScan

1 个答案:

答案 0 :(得分:0)

Java中没有语法允许您直接引用On Error resume next Set currItem = ActiveInspector.currentitem on error goto 0 if curritem is nothing then Set OutMail = CreateItem(0) With OutMail .To = "" .CC = "" .BCC = "" .Subject = "PRINT SCREEN" .Set olInsp = .GetInspector .Set wdDoc = olInsp.WordEditor .Set oRng = wdDoc.Range oRng.collapse 1 oRng.Paste .Display End With Else If curritem.class = olmail if curritem.subject = "PRINT SCREEN" then Set outMail = curritem ' code to append print screen to body of curritem End If End If End If 个对象,因此您的问题的简短答案是

您无法使用Package以保证编译时安全的方式引用包。您只能直接引用package-info.java对象并通过该Class对象获取其包。并且您也不能将类放入Class,因为名为package-info.java的Java源文件应至少包含一个名为package-info.java的类(如果有),但这也是不可能的,因为1)不允许package-info作为java标识符,2)-是java中的保留关键字,符合Java Language Specification

在这种情况下,使用占位符类或接口是正确的解决方案,它为您提供了在这种情况下可以实现的最大保障。