Java的注解相关的命令
与注解处理器的有关的命令有5个,分别如下:
(1)-XprintProcessorInfo 输出有关请求处理程序处理哪些注释的信息
(2)-XprintRounds 输出有关注释处理循环的信息
(3)-processor 路径为包路径,因为指定的路径要通过loadClass()方法来加载
Names of the annotation processors to run. This bypasses the default discovery process.
(4)-processpath
Specifies where to find annotation processors. If this option is not used, then the class path is searched for processors.
(5)-proc: 当指定-proc:none值时不对注解进行处理。
Controls whether annotation processing and compilation are done. -proc:none
means that compilation takes place without annotation processing. -proc:only
means that only annotation processing is done, without any subsequent compilation.
(6)-Xprint 如果有这个命令,则Javac中有个专门的注解处理类PrintingProcessor。注意:当指定这个-Xprint时其它注解类将不生效。
(7)-Akey=value
eg:
@SupportedOptions({"com.sun.tools.javac.sym.Jar", "com.sun.tools.javac.sym.Dest"}) @SupportedAnnotationTypes({"com.test11.CSAnn"}) @SupportedSourceVersion(SourceVersion.RELEASE_7) public class CreateSymbolsProcessor extends AbstractProcessor { public boolean process(Set<? extends TypeElement> tes, RoundEnvironment renv) { if (renv.processingOver()) // 没有这个判断会调用两次createSymbols createSymbols(); return true; } void createSymbols() { String jarName = processingEnv.getOptions().get("com.sun.tools.javac.sym.Jar"); String destName = processingEnv.getOptions().get("com.sun.tools.javac.sym.Dest"); System.out.println(jarName+"/"+destName); } }
支持的注解为com.test11.CSAnn,代码如下:
package com.test11; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Retention(RetentionPolicy.CLASS) @Target(ElementType.METHOD) public @interface CSAnn { }
在方法上使用这个注解:
public class Test1 { @CSAnn private void process() { } }
在运行时指定:
"-Acom.sun.tools.javac.sym.Jar=AJarValue" "-Acom.sun.tools.javac.sym.Dest=ADestValue" "-processor","com.test11.CreateSymbolsProcessor"
最后打印出AJarValue/ADestValue
Java的注解相关的命令的更多相关文章
- java自定义注解知识实例及SSH框架下,拦截器中无法获得java注解属性值的问题
一.java自定义注解相关知识 注解这东西是java语言本身就带有的功能特点,于struts,hibernate,spring这三个框架无关.使用得当特别方便.基于注解的xml文件配置方式也受到人们的 ...
- Java的cmd配置(也即Java的JDK配置及相关常用命令)——找不到或无法加载主类 的解决方法
Java的cmd配置(也即Java的JDK配置及相关常用命令) ——找不到或无法加载主类 的解决方法 这段时间一直纠结于cmd下Java无法编译运行的问题.主要问题描述如下: javac 命令可以正 ...
- 深入理解Java:注解
注解作用:每当你创建描述符性质的类或者接口时,一旦其中包含重复性的工作,就可以考虑使用注解来简化与自动化该过程. Java提供了四种元注解,专门负责新注解的创建工作. 元注解 元注解的作用就是负责注解 ...
- Java之注解
package com.demo.test; import java.lang.annotation.Documented; import java.lang.annotation.ElementTy ...
- Java高新技术 注解
Java高新技术 注解 知识概要: (1)了解注解 (2)注解的应用结构图 (3)@Retention(RetentionPolicy.RUNTIME) ...
- JAVA配置&注解方式搭建简单的SpringMVC前后台交互系统
前面两篇文章介绍了 基于XML方式搭建SpringMVC前后台交互系统的方法,博文链接如下: http://www.cnblogs.com/hunterCecil/p/8252060.html htt ...
- JAVA常用注解
摘自:https://www.cnblogs.com/guobm/p/10611900.html 摘要:java引入注解后,编码节省了很多需要写代码的时间,而且精简了代码,本文主要罗列项目中常用注解. ...
- /etc/profile 路径出错后相关的命令失效解决方式
关于 Linux 的配置文件 /etc/profile 路径出错后相关的命令失效解决方式(如:ls,vi不能用) 今天学习LINUX 下配置jdk 和安装tomcat 通过VI编辑/etc/profi ...
- [2]注解(Annotation)-- 深入理解Java:注解(Annotation)自定义注解入门
转载 http://www.cnblogs.com/peida/archive/2013/04/24/3036689.html 深入理解Java:注解(Annotation)自定义注解入门 要深入学习 ...
随机推荐
- Codeforces805 A. Fake NP 2017-05-05 08:30 327人阅读 评论(0) 收藏
A. Fake NP time limit per test 1 second memory limit per test 256 megabytes input standard input out ...
- C++ 中数组做参数的分析
C++ 中数组做参数的分析 1.数组降价问题? "数组引用"以避免"数组降阶",数组降阶是个讨厌的事,这在C语言中是个无法解决的问题,先看一段代码,了解什么是& ...
- hdu 4950 打怪
http://acm.hdu.edu.cn/showproblem.php?pid=4950 给定怪兽血量h,你攻击力a,怪物回血力b,你攻击k次要休息一次,问能否杀死怪兽 特判一次打死怪兽的情况和第 ...
- SPFA穿越虫洞——负权回路得判断
poj3259 题目大意:穿越虫洞可以回到过去(时间--)所以能不能让时间倒流呢,就是判断有没有负权回路这次尝试用SPFA算法,也可以复习一下链式前向星 准备工作,队列q,spfa算法得有点就在于这个 ...
- Android之ubuntu源码开发环境搭建笔记
昨天,把电脑主机全换了,因此之前的工作环境得重新搭建,我是既开心又纠结,开心的是可以用高配置的电脑,纠结的是搭环境比较麻烦,稍有不慎,就会导致源代码编译不过,前功尽弃.为了减少工作量,以及避免不必要掉 ...
- 初识powershell、nuget powershell 调试
初识powershell.nuget powershell 调试 补充 此文仅当做powershell的初步认识体验,关于nuget包里此脚本的使用官方已在vs2017停止支持,请看此文文末 前言 老 ...
- C# 标准事件模式
.NET框架为事件定义了一个标准模式,它的目的是保持框架和用户代码之间的一致性. 标准事件的模式核心是SystemEventArgs——预定义的没有成员的框架类(不同于静态Empty属性) Event ...
- 在Windows安装Reids 详解
今天安装了redis,记录点经验 因为Redis项目没有正式支持Windows. 但Microsoft开发和维护一个针对Windows 64版的redis. 下载地址在微软的GitHub上,地址:ht ...
- WPF之坑——ICommandSource与RoutedUICommand
最近在项目中自己写了一个控件A,继承自contentcontrol,实现了icommandsource接口.(因需求特殊并没有使用buttonbase及它的派生类为基类),控件A在测试程序中运转良好, ...
- rabbitMQ的简单实例——amqp协议带数据回写机制
rabbitMQ是一种高性能的消息队列,支持或者说它实现了AMQP协议(advanced message queue protocol高级消息队列协议). 下面简单讲一讲一个小例子.我们首先要部署好r ...