1 | Working On Java[TM] Management Extensions (JMX[TM)) Using NetBeans IDE
|
---|
2 |
|
---|
3 | README FIRST
|
---|
4 |
|
---|
5 | make/netbeans/README for getting started with NetBeans IDE and OpenJDK,
|
---|
6 | and workings with OpenJDK NetBeans projects.
|
---|
7 |
|
---|
8 | This README focusses on working on the OpenJDK JMX API using NetBeans IDE.
|
---|
9 |
|
---|
10 | This NetBeans project for OpenJDK JMX allows you to modify, build, and test
|
---|
11 | the JMX API in a standalone manner. It can also be used to generate
|
---|
12 | the JMX API documentation for preview.
|
---|
13 |
|
---|
14 | The JMX API does not contain native code. It is a pure java library.
|
---|
15 | You do not need to install all the Java SE sources to work on JMX,
|
---|
16 | you only need the following subset:
|
---|
17 |
|
---|
18 | make/netbeans/
|
---|
19 | src/share/classes/com/sun/jmx/
|
---|
20 | src/share/classes/javax/management/
|
---|
21 | test/TEST.ROOT
|
---|
22 | test/com/sun/management/
|
---|
23 | test/java/lang/management/
|
---|
24 | test/javax/management/
|
---|
25 |
|
---|
26 | If you don't want to build the whole JDK, you will also need a
|
---|
27 | pre-built version of OpenJDK (or JDK 7). Edit your
|
---|
28 |
|
---|
29 | $HOME/.openjdk/build.properties
|
---|
30 |
|
---|
31 | file (create it if you don't have one yet) and set the bootstrap.jdk variable
|
---|
32 | point to that JDK:
|
---|
33 |
|
---|
34 | bootstrap.jdk=<JDK_7_HOME>
|
---|
35 |
|
---|
36 | Then from within NetBeans IDE open the JMX project, and invoke the
|
---|
37 | "Build Project" and "Test Project" target. Note that running all the
|
---|
38 | tests for JMX takes a while. The build may also fail if it doesn't
|
---|
39 | find a directory named src/${platform}. This may happen if you haven't
|
---|
40 | installed all OpenJDK sources. In this case, you can simply
|
---|
41 | create an empty directory with the name expected by the build mechanism.
|
---|
42 |
|
---|
43 | Which tests are run are defined by the jtreg.test variable declared
|
---|
44 | in make/netbeans/jmx/build.properties. Note that JMX tests are all
|
---|
45 | placed under test/javax/management/. test/java/lang/management/
|
---|
46 | and test/com/sun/management/ contain some tests that happen to
|
---|
47 | use JMX and we therefore recommend to run these tests too.
|
---|
48 |
|
---|
49 | If you are working on a JMX fix, don't forget to create a
|
---|
50 | corresponding jtreg unit test under test/javax/management/.
|
---|
51 | You can look at existing tests to see how this is done.
|
---|
52 |
|
---|
53 | The set of actions defined in this project are:
|
---|
54 |
|
---|
55 | * Build Project:
|
---|
56 |
|
---|
57 | - Compiles JMX API source files and puts the class files under
|
---|
58 | build/${platform}-${arch}/classes.
|
---|
59 |
|
---|
60 | - Generates a JMX jar file under dist/lib/jmx.jar. To use your modified
|
---|
61 | JMX classes instead of the built-in JDK classes you will need
|
---|
62 | to put this jar file in front of the bootclasspath:
|
---|
63 |
|
---|
64 | java -Xbootclasspath/p:dist/lib/jmx.jar mytestapp.MyAppMainClass
|
---|
65 |
|
---|
66 | * Generate Javadoc for Project
|
---|
67 |
|
---|
68 | - Generates the JMX API Documentation under
|
---|
69 |
|
---|
70 | build/${platform}-${arch}/javadoc/jmx.
|
---|
71 |
|
---|
72 | * Test Project
|
---|
73 |
|
---|
74 | - Runs the JMX and Management and Monitoring jtreg unit tests.
|
---|
75 |
|
---|
76 | - The results are written under build/${platform}-${arch}/jtreg/jmx
|
---|
77 | and the HTML test report can be found at
|
---|
78 | build/${platform}-${arch}/jtreg/jmx/JTreport/report.html.
|
---|
79 |
|
---|
80 | * Clean Project
|
---|
81 |
|
---|
82 | - Cleans the files created by this projet under build/
|
---|
83 | Some files may remain.
|
---|
84 |
|
---|
85 |
|
---|
86 | IMPORTANT NOTE
|
---|
87 |
|
---|
88 | Please make sure to follow carefully the governance rules documented at
|
---|
89 | http://openjdk.dev.java.net/
|
---|
90 |
|
---|