using class binary name same as CmdLineProcessor

Review Request #1489 - Created Dec. 15, 2014 and submitted

Peiyu Wang
benjyw, dturner-tw, ity, jinfeng, jsirois, patricklaw, zundel

CmdLineProcessor uses binary class name (,

Classes that uses CmdLineProcessor as annotation processor would fail,

"Expected classname -> path, got "com.twitter.common.args.ArgsTest$App -> ..."

This patch adds $ to the class name matching, and changed the format of compile/jvm/java/classes/deprecation_report.txt slightly so it's easier to load in testing passed

David Turner
Jin Feng
Ity Kaul
Peiyu Wang
Eric Ayers
David Turner
Peiyu Wang
Review request changed

Status: Closed (submitted)

Nick Howard (Twitter)

Will this only be used for binary names that only come from java sources that use alphanumeric type names? Java's definition of identifier is wider than Python's, eg あ is a valid Java identifier, but not a valid Python identifier.

The spec doesn't offer much guidance beyond saying that they must be valid unicode, and the names unqualified identifiers must not contain . ; [ /.

I think this change covers most class names, but doesn't cover all valid Java class names.