close Warning: Can't synchronize with repository "(default)" (Unsupported version control system "svn": No module named svn). Look in the Trac log for more information.

Changes between Version 74 and Version 75 of JCop


Ignore:
Timestamp:
01/12/2011 04:30:39 PM (9 years ago)
Author:
malte.appeltauer
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • JCop

    v74 v75  
    4040
    4141
    42 == Command Line Tools ==
    43 In the following we describe the usage of the JCop language compiler that is able to compile programs of the JCop and Java programming language. The compiler implements the language as defined in the JCop language specification version 1.0. The language definition has continuously been revised to precisely specify the language including various corner cases and combinations of features. The compiler is an extension to the JastAddJ Java compiler that is implemented based on the [http://jastadd.org/JastAdd JastAdd compiler framework].
    44 
    45 
    46 === Compile ===
    47 ==== Synopsis ====
    48    {{{jcopc  [Options]  [file]}}}
    49 
    50 ==== Description ====
    51 The jcopc  command compiles JCop and Java source, producing .class files compliant
    52 with any Java VM (1.1 or later). The argument after the options specifies the source file
    53 to compile. Source files are specified by their full qualified name (package name + type
    54 name), separated by a dot (".") (rather than a folder delimiter as for javac).
    55 
    56 ==== Options ====
    57 {{{-classpath  <path>}}}
    58   Specify where to find user class files and annotation processors.
    59 
    60 {{{-sourcepath  <path>}}}
    61   Specify where to find input source files. Only required if the sources aren’t located in the working directory. [[BR]]
    62   Example:
    63   {{{
    64   jcopc  -sourcepath  src  myPckg.MyMainClass
    65   }}}
    66 
    67 {{{-d  <directory>}}}
    68   Specify where to place generated class files.  [[BR]]
    69   Example:
    70   {{{
    71   jcopc  -d  bin  -sourcepath  src  myPckg.MyMainClass
    72   }}}
    73 
    74 {{{-sourcedump  <path>}}}
    75   Dumps Java source files of the compiled classes into the specified folder.  [[BR]]
    76   Example:
    77   {{{
    78   jcopc  -sourcedump  dump  myPckg.MyMainClass
    79   }}}
    80 
    81 {{{-agg  <path>}}}
    82   Generates a file containing an AGG graph representation of the program’s AST. [[BR]]
    83   Example:
    84   {{{
    85   jcopc  -agg  output/agg  myPckg.MyMainClass
    86   }}}
    87 
    88 {{{-ctl}}}
    89   Output JCop specific messages about what the compiler is doing. [[BR]]
    90   Example:
    91   {{{
    92   jcopc  -ctl  myPckg.MyMainClass
    93   ...
    94   >  copying  PartialMethod.java
    95   >  to  src\jcop\lang
    96   >  ..done
    97   ...
    98   >  compiling:...src\de\uni_potsdam\hpi\swa\Widget.jcop  ..done
    99   >  compiling:jcop\lang\Composition.java  ..done
    100   ...
    101   >  ..done
    102   >  compile  and  weave  auxilliary  aspect    bin\jcop\lang\JCopAspect.aj
    103   >  ..done
    104   >  compiled  in  3723  millis
    105   }}}
    106 
    107 {{{-rtl}}}
    108   Loggs layer activation and composition information at runtime.  [[BR]]
    109   Example:
    110   {{{
    111   jcopc  -rtl  myPckg.MyMainClass
    112   ...
    113   >  INFO:  accessing  base  method  of  getBMI
    114   >  INFO:  accessing  method  getBMI  of  layer  Visualization
    115   ...
    116   }}}
    117 
    118 {{{-verbose}}}
    119   Output messages about what the compiler is doing
    120 
    121 {{{-help}}}
    122   Print a synopsis of standard options
    123 
    124 {{{-aspectinfo}}}
    125   Output messages about aspect weaving
    126 
    127 {{{-version}}}
    128   Print version information.
    129 
    130 {{{-xml-outline-path  <path>}}}
    131   Generate an outline in XML format (useful for development environments)
    132 
    133 {{{-class-in-layer-outline}}}
    134   Generate an outline in XML format (useful for development environments)
    135 
    136 ==== File Names ====
    137 jcopc accepts source files with either the .java extension or the .jcop extension.
    138 
    139 
    140 === Launch ===
    141 ==== Synopsis ====
    142    {{{jcop [Options] class [ argument ]}}}
    143 
    144 ==== Description ====
    145 The jcop command launches a JCop or Java application. It does this by starting a Java runtime environment (instrumented with the AspectJ weaver), loading a specified class, and invoking that class's main method. The method declaration must look like a plain Java main method:
    146        
    147    {{{ public static void main(String args[]) {...} }}}
    148 
    149 
    150 The method must be declared public and static, it must not return any value, and it must accept a String array as a parameter. By default, the first non-option argument is the name of the class to be invoked. A fully-qualified class name should be used.
    151 
    152 The argument after the options specifies the class file to compile and by its full qualified name (package name + type name), separated by a dot (".").
    153 
    154 ==== Options ====
    155 
    156 As options all standard Java options are allowed.   
    157 
    158 ==== File Names ====
    159 
    160 {{{jcop}}} accepts Java bytecode files with the {{{class}}} extension.
     42== Manual ==
     43A Manual can be found [wiki:JcopManual here]
    16144
    16245