You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

oopsla2001-script.html 9.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Language" content="en-us">
  4. <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
  5. <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
  6. <meta name="ProgId" content="FrontPage.Editor.Document">
  7. <title>AspectJ Installation Note</title>
  8. <STYLE TYPE="text/css">
  9. <!--
  10. /* FOR THE SDA PAGE */
  11. /*
  12. BODY {margin-top: 15px; margin-left: 15px; margin-right: 15px;}
  13. */
  14. A:link {
  15. color:#4756AC;
  16. }
  17. A:visited {
  18. color:#60657B;
  19. }
  20. A:hover {
  21. color:red
  22. }
  23. INPUT {font:12px "Courier New", sans-serif;}
  24. H2 {
  25. font:18px/18px Verdana, Arial, Helvetica, sans-serif;
  26. color:black;
  27. font-weight:bold;
  28. margin-left: 10px;
  29. line-height:110%;
  30. }
  31. H3 {
  32. font:18px/18px Verdana, Arial, Helvetica, sans-serif;
  33. color:black;
  34. font-weight:bold;
  35. margin-left: 10px;
  36. line-height:110%;
  37. }
  38. H4 {
  39. font:15px/16px Verdana, Arial, Helvetica, sans-serif;
  40. color:black;
  41. font-weight:bold;
  42. margin-left: 10px;
  43. line-height:140%;
  44. }
  45. P {
  46. font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  47. margin-right: 10px;
  48. margin-left: 10px;
  49. line-height:130%;
  50. }
  51. .paragraph {
  52. font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  53. margin-right: 10px;
  54. margin-left: 10px;
  55. line-height:130%;
  56. }
  57. .smallParagraph {
  58. font:11px/11px Verdana, Arial, Helvetica, sans-serif;
  59. margin-right: 10px;
  60. margin-left: 10px;
  61. line-height:130%;
  62. }
  63. LI {
  64. font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  65. text-align:justify;
  66. margin-right: 10px;
  67. margin-left: 15px;
  68. line-height:120%;
  69. }
  70. /*
  71. UL {
  72. font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  73. text-align:justify;
  74. margin-right: 10px;
  75. margin-left: 15px;
  76. line-height:120%;
  77. }*/
  78. DL {
  79. font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  80. text-align:justify;
  81. margin-right: 10px;
  82. margin-left: 15px;
  83. line-height:120%;
  84. }
  85. B { font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  86. font-weight:bold;
  87. line-height:140%;
  88. }
  89. .footer {
  90. font:10px/10px Verdana, Arial, Helvetica, sans-serif;
  91. color:#888888;
  92. text-align:left
  93. }
  94. .figureTitle {
  95. font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  96. text-align:justify;
  97. text-align:center
  98. }
  99. .copyrightNotice {
  100. font:10px/10px Verdana, Arial, Helvetica, sans-serif;
  101. color:#999999;
  102. line-height:110%;
  103. }
  104. .smallHeading {
  105. font:13px/13px Verdana, Arial, Helvetica, sans-serif;
  106. font-weight:bold;
  107. line-height:110%;
  108. }
  109. .tinyHeading {
  110. font:11px/11px Verdana, Arial, Helvetica, sans-serif;
  111. font-weight:bold;
  112. line-height:120%;
  113. }
  114. .newsText {
  115. font:11px/11px Verdana, Arial, Helvetica, sans-serif;
  116. line-height:130%;
  117. }
  118. .smallParagraph {
  119. font:11px/11px Verdana, Arial, Helvetica, sans-serif;
  120. line-height:130%;
  121. }
  122. .fancyHeading {
  123. font:20px/20px Chantilly, Arial, Helvetica, sans-serif;
  124. margin-right: 10px;
  125. color:#6f7a92;
  126. margin-left: 10px;
  127. line-height:130%;
  128. }
  129. -->
  130. </STYLE>
  131. </head>
  132. <BODY BGCOLOR="white">
  133. <h3 align="center">AspectJ Demo</h3>
  134. <h4>1. Installing the Demo</h4>
  135. <ul>
  136. <li>Extract the contents of &quot;aspectj-demo.zip&quot; to
  137. &quot;C:\aspectj-demo&quot;, resulting in the following directory structure:
  138. <ul>
  139. <li>C:\aspectj-demo
  140. <ul>
  141. <li>apps</li>
  142. <li>bin</li>
  143. <li>examples</li>
  144. <li>slides</li>
  145. </ul>
  146. </li>
  147. </ul>
  148. </li>
  149. <li>Verify that JBuilder 4 is using the correct project by opening it, closing
  150. all of the current projects
  151. <ul>
  152. <li>Under the &quot;File&quot; menu select &quot;Close Projects...&quot;,
  153. select all of the open projects and close them</li>
  154. <li>Under the &quot;File&quot; menu select &quot;Open Project...&quot;,
  155. and open &quot;C:\aspectj-demo\examples\jbuilder\Spacewar.jpr&quot;</li>
  156. <li>You should now be able to compile &quot;Spacewar&quot;.&nbsp; If
  157. ajdeForJBuilder reports any problems refer to
  158. &quot;C:\aspectj-demo\apps\aspectj0.8\doc\primer\tools\ajdeForJBuilder.html&quot;</li>
  159. </ul>
  160. </li>
  161. <li>Set up your &quot;Windows Taskbar&quot; to be permanently visible by
  162. right-clicking the bar, selecting &quot;Properties&quot;, and un-checking
  163. &quot;Auto hide&quot;</li>
  164. <li>From your &quot;Windows Explorer&quot; drag the
  165. &quot;C:\aspectj-demo\bin\Demo&quot; folder to the &quot;Windows
  166. Taskbar&quot;.&nbsp; This will have the effect of placing the demo buttons
  167. on the taskbar.&nbsp; To remove the buttons drag off the &quot;Demo&quot;
  168. toolbar and close the resulting floating toolbar window.</li>
  169. <li>It is useful to have the &quot;Task Manager&quot; running in the
  170. &quot;System Tray&quot; during the demo in order to see when the debugger is
  171. loading since it is slow.&nbsp; To launch it right-click the &quot;Windows
  172. Taskbar&quot; and select &quot;Task Manager&quot;, then minimize the window.
  173. </li>
  174. </ul>
  175. <h4>2. Initial Setup</h4>
  176. <ul>
  177. <li>Emacs Setup
  178. <ul>
  179. <li>Click &quot;Emacs&quot;, and move the cursor to the beginning of the
  180. &quot;spacewar.Ship.fire&quot; method</li>
  181. </ul>
  182. </li>
  183. <li>JBuilder Setup
  184. <ul>
  185. <li>Click &quot;JBuilder&quot;, open the &quot;AspectJ Structure
  186. View&quot;, and bring the editor to the &quot;spacewar.Ship.fire&quot;
  187. method</li>
  188. <li>under the &quot;Spacewar.jpr&quot; node in the &quot;Project
  189. Explorer&quot; (left pane of main window) expand the &quot;spacewar&quot;
  190. package to see its classes</li>
  191. <li>ensure that the last compile was done without &quot;Debug.java&quot;
  192. in the build configuration</li>
  193. </ul>
  194. </li>
  195. <li>Forte Setup
  196. <ul>
  197. <li>Click &quot;Forte&quot;, click the &quot;AspectJ Structure View&quot;
  198. button, and navigate the editor to the &quot;spacewar.EnsureShipIsAlive&quot;
  199. class </li>
  200. </ul>
  201. </li>
  202. <li>AJDoc Setup
  203. <ul>
  204. <li>click &quot;AJDoc&quot;, browse to the &quot;spacewar/Ship.java&quot;
  205. class</li>
  206. </ul>
  207. </li>
  208. </ul>
  209. <h4>3. Running the Demo</h4>
  210. <ul>
  211. <li>Emacs
  212. <ul>
  213. <li>At the declaration of the &quot;spacewar.Ship.fire&quot; method hit
  214. &quot;&lt;cntrl&gt;x, &lt;cntrl&gt;j&quot;</li>
  215. <li>Follow the resulting popup menu to the &quot;EnsureShipIsAlive&quot;
  216. advice</li>
  217. <li>Navigate back to &quot;spacewar.Ship.fire&quot; using the same method</li>
  218. </ul>
  219. </li>
  220. <li>JBuilder
  221. <ul>
  222. <li>Navigation
  223. <ul>
  224. <li>In the &quot;Structure View&quot; select the &quot;fire&quot;
  225. method and expand it's children to reveal &quot;EnsureShipIsAlive:
  226. around...&quot;</li>
  227. <li>Double-click &quot;EnsureShipIsAlive: around...&quot; to navigate
  228. to that advice declaration</li>
  229. <li>Navigate back using the same method, or using the
  230. &quot;Back&quot;, then &quot;Forward&quot; method in conjuntion with
  231. the structure tree (this navigation can also be done by
  232. right-clicking the inline advice icons in the editor's gutter)</li>
  233. </ul>
  234. </li>
  235. <li>Compilation
  236. <ul>
  237. <li>In &quot;EnsureShipIsAlive&quot; remove &quot;ship&quot; from the
  238. &quot;proceed(ship)&quot; call and recompile.</li>
  239. <li>When the error message pops up fix it by replacing
  240. &quot;ship&quot;</li>
  241. </ul>
  242. </li>
  243. <li>Build Configuration
  244. <ul>
  245. <li>Double-click &quot;Default.lst&quot; and select the &quot;lst
  246. Designer&quot; tab at the bottom of the editor pane</li>
  247. <li>Expand the &quot;spacewar&quot; node</li>
  248. <li>Click &quot;Debug.java&quot; in order to add it to the
  249. configuration</li>
  250. <li>Navigate to the &quot;Ship.java&quot; class so that the effects of
  251. the new compilation are visible in the &quot;Structure View&quot;
  252. when the compilation completes</li>
  253. <li>Compile &quot;Default.lst&quot;</li>
  254. <li>Run the project (top the execution of the project by clicking the
  255. red stop button in the run messages pane)</li>
  256. </ul>
  257. </li>
  258. <li>Debugging
  259. <ul>
  260. <li>Start the debugger</li>
  261. <li>When the &quot;Please select launch parameters...&quot; dialog
  262. pops up click &quot;OK&quot;</li>
  263. <li>Select the &quot;Classes&quot; tab (4th tab from the top)</li>
  264. <li>When the game starts, expand &quot;spacewar&quot;, expand &quot;Ship.java&quot;</li>
  265. <li>Browse to the &quot;fire&quot; method and expand it</li>
  266. <li>Right-click on the &quot;fire&quot; method and select &quot;stop
  267. in spaceawar.Ship.fire&quot;</li>
  268. <li>Wait for the breakpoint to be hit</li>
  269. <li>Use the &quot;Step Into&quot; button (5th button on the bottom
  270. from the left) to single step the file until you step through the
  271. advice and into the body of the fire method</li>
  272. <li>Click the red stop button (1st button) in order to stop the
  273. debugging</li>
  274. </ul>
  275. </li>
  276. </ul>
  277. </li>
  278. <li>Forte
  279. <ul>
  280. <li>Currently no Forte demo (fyi: navigate the structure the same way as
  281. in JBuilder, and right-click the LST files to compile them, right click
  282. &quot;Game.java&quot; to execute it)</li>
  283. </ul>
  284. </li>
  285. <li>AJDoc
  286. <ul>
  287. <li>Scroll down to the &quot;fire&quot; method, and follow it's
  288. &quot;Advised by: &quot; link to get to the &quot;EnsureShipIsAlive&quot;
  289. aspect</li>
  290. </ul>
  291. </li>
  292. </ul>
  293. <p>&nbsp;</p>
  294. </body>
  295. </html>