Java編程思想》中的注解代码中引入过这么一个包(com.sun.mirror),书上说的是在Jdk中有个tools.jar中,引入这个包就每这个问题了,但是笔者用的是JDK 1.8,把这个包import进来,代码还是一批报错。

实在没办法就在网上找,于是找到了apt-mirror-api-0.1.jar,它包含了以下内容:

Files contained in apt-mirror-api-0.1.jar:

META-INF/MANIFEST.MF 
META-INF/maven/com.moparisthebest.aptIn16/apt-mirror-api/pom.properties 
META-INF/maven/com.moparisthebest.aptIn16/apt-mirror-api/pom.xml 
com.sun.mirror.apt.AnnotationProcessor.class 
com.sun.mirror.apt.AnnotationProcessorEnvironment.class 
com.sun.mirror.apt.AnnotationProcessorFactory.class 
com.sun.mirror.apt.AnnotationProcessorListener.class 
com.sun.mirror.apt.AnnotationProcessors.class 
com.sun.mirror.apt.Filer.class com.sun.mirror.apt.Messager.class 
com.sun.mirror.apt.RoundCompleteEvent.class 
com.sun.mirror.apt.RoundCompleteListener.class 
com.sun.mirror.apt.RoundState.class 
com.sun.mirror.declaration.AnnotationMirror.class 
com.sun.mirror.declaration.AnnotationTypeDeclaration.class 
com.sun.mirror.declaration.AnnotationTypeElementDeclaration.class 
com.sun.mirror.declaration.AnnotationValue.class 
com.sun.mirror.declaration.ClassDeclaration.class 
com.sun.mirror.declaration.ConstructorDeclaration.class 
com.sun.mirror.declaration.Declaration.class 
com.sun.mirror.declaration.EnumConstantDeclaration.class 
com.sun.mirror.declaration.EnumDeclaration.class 
com.sun.mirror.declaration.ExecutableDeclaration.class 
com.sun.mirror.declaration.FieldDeclaration.class 
com.sun.mirror.declaration.InterfaceDeclaration.class 
com.sun.mirror.declaration.MemberDeclaration.class 
com.sun.mirror.declaration.MethodDeclaration.class 
com.sun.mirror.declaration.Modifier.class 
com.sun.mirror.declaration.PackageDeclaration.class 
com.sun.mirror.declaration.ParameterDeclaration.class 
com.sun.mirror.declaration.TypeDeclaration.class 
com.sun.mirror.declaration.TypeParameterDeclaration.class 
com.sun.mirror.type.AnnotationType.class 
com.sun.mirror.type.ArrayType.class 
com.sun.mirror.type.ClassType.class 
com.sun.mirror.type.DeclaredType.class 
com.sun.mirror.type.EnumType.class 
com.sun.mirror.type.InterfaceType.class 
com.sun.mirror.type.MirroredTypeException.class 
com.sun.mirror.type.MirroredTypesException.class 
com.sun.mirror.type.PrimitiveType.class 
com.sun.mirror.type.ReferenceType.class 
com.sun.mirror.type.TypeMirror.class 
com.sun.mirror.type.TypeVariable.class 
com.sun.mirror.type.VoidType.class 
com.sun.mirror.type.WildcardType.class 
com.sun.mirror.util.DeclarationFilter.class 
com.sun.mirror.util.DeclarationScanner.class 
com.sun.mirror.util.DeclarationVisitor.class 
com.sun.mirror.util.DeclarationVisitors.class 
com.sun.mirror.util.Declarations.class 
com.sun.mirror.util.SimpleDeclarationVisitor.class 
com.sun.mirror.util.SimpleTypeVisitor.class 
com.sun.mirror.util.SourceOrderDeclScanner.class 
com.sun.mirror.util.SourcePosition.class 
com.sun.mirror.util.TypeVisitor.class com.sun.mirror.util.Types.class

把这个包引进代码中就可以了。

【转】java编程思想第20章的注解例子用到的com.sun.mirror的jar包的更多相关文章

  1. Java编程思想 第21章 并发

    这是在2013年的笔记整理.现在重新拿出来,放在网上,重新总结下. 两种基本的线程实现方式 以及中断 package thread; /** * * @author zjf * @create_tim ...

  2. Java编程思想——第17章 容器深入研究 读书笔记(三)

    七.队列 排队,先进先出. 除并发应用外Queue只有两个实现:LinkedList,PriorityQueue.他们的差异在于排序而非性能. 一些常用方法: 继承自Collection的方法: ad ...

  3. Java编程思想——第17章 容器深入研究(two)

    六.队列 排队,先进先出.除并发应用外Queue只有两个实现:LinkedList,PriorityQueue.他们的差异在于排序而非性能. 一些常用方法: 继承自Collection的方法: add ...

  4. Java编程思想中关于闭包的一个例子

    Java编程思想中的一个例子,不是很理解使用闭包的必要性,如果不使用闭包,是不是有些任务就不能完成?继续探索. package InnerClass; interface Incrementable ...

  5. 《Java编程思想》笔记 第二十章 注解

    1.注解 注解也称元数据,是在代码中添加信息的一种方式添加的信息提供给编译器或者工具类框架使用. SE5引入,可以提供用来完整描述程序所需要的信息,往往这些信息是无法用Java来表达的. 注解可以在编 ...

  6. Java编程思想-第四章练习题

    练习1:写一个程序,打印从1到100的值 public class Print1To100{ public static void main(String args[]){ for(int i = 1 ...

  7. Java编程思想笔记(第二章)

    第二章  一切都是对象 尽管Java是基于C++的,但相比之下,Java是一种更纯粹的面向对象程序设计语言. c++和Java都是杂合型语言(hybird language) 用引用(referenc ...

  8. java编程思想笔记(第一章)

    Alan Kay 第一个定义了面向对象的语言 1.万物皆对象 2.程序是对象的集合,他们彼此通过发送消息来调用对方. 3.每个对象都拥有由其他对象所构成的存储 4.每个对象都拥有其类型(TYpe) 5 ...

  9. java编程思想-第五章-某些练习题

    参考https://blog.csdn.net/caroline_wendy/article/details/46844651 10&11 finalize()被调用的条件 Java1.6以下 ...

随机推荐

  1. 接口_简单get接口_第一个接口

    import flask,json # print(__name__) ##__name__代表当前这个python文件 server = flask.Flask(__name__) #把咱们当前的这 ...

  2. Python(1)(安装与基本使用)

    1.Python的下载和安装我就不废话了,百度上都有. 我安装的是Python 3.4.3 64bit 安装完之后,打开Cmd,输入Python 显示以上相同,按照百度的意思就是安装成功. 2.配置环 ...

  3. mac系统下查看端口占用情况

    localhost:~ mhx$  lsof -i tcp:8080 COMMAND  PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NA ...

  4. putty与emacs

    win环境下putty登录到linux并使用emacs时,需要折腾好配置才能正常工作.下面是折腾过程中碰到的问题与解决步骤: 1)要在putty控制台中启用鼠标,只需要在.emacs配置文件中启用xt ...

  5. Ubuntu bitnami gitlab 安装

    /************************************************************************************** * Ubuntu bit ...

  6. linux--memcache的安装和使用(转)

    memcache是高性能,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度.据说官方所说,其用户包括twitter.digg.flickr等,都是些互联网大腕呀.目前用memca ...

  7. 一梦浮生2012 IOS高级进阶目录

    一梦浮生2012 精通iphone的UI开发,能熟练操作复杂表视图,熟练使用图层技术, 可以自定义UI控件,使用类别扩展系统控件功能; 擅长通讯技术,熟悉各种通信协议,精通xml, json, 二进制 ...

  8. margin -------总结(block inline 可置换元素)

    margin在块元素.内联元素中的区别 block元素(块元素)大致有:P|H1|H2|H3|H4|H5|H6|UL|OL|PRE| DL | DIV | NOSCRIPT | BLOCKQUOTE ...

  9. 把文件类型转化为byte[]

    转自:https://blog.csdn.net/xinxiqi/article/details/78899159 package com.sanqing.util; import java.io.B ...

  10. oppo手机怎么打开USB调试模式

    OPPO手机USB调试的设置方法:1.ColorOS 3.0版本,进入设置--关于手机,连续点击版本号直到出现“您已处于开发者选项”,再进入设置--其他设置--开发者选项--USB调试进行设置: 2. ...