Daniel Gong wrote:
I also encountered the Ubuntu "permission denied" problem...
I think handling this kind of problem is the user's responsibility.

But it'll break build script. When we are testing it, we are using it, it's our responsibility to make it work.

Simply adding

<chmod file="${target.dir}/bin/java" perm="+x"/>

after generating jre can make it work on Linux.


Thank you very much, Regis.

-Daniel

On Thu, Aug 13, 2009 at 10:36 AM, Regis <xu.re...@gmail.com> wrote:

Daniel Gong wrote:

On Thu, Aug 6, 2009 at 10:55 AM, Regis <xu.re...@gmail.com> wrote:

 Daniel Gong wrote:
 Yes it is the problem of  the build file, I have correct it and  upload
a
new one:)
To run it, you should modify the origin and target property in the build
file to your origin jre path and the target min jre path.
More, I have updated the description. Hope it will help you all and work
well:)

On Wed, Aug 5, 2009 at 4:40 PM, Regis <xu.re...@gmail.com> wrote:

 Daniel Gong wrote:

 Sorry, that's my fault. It seems I have put the wrong version of ant

build...I will correct it and upload it again.

 It seems not a problem of ant, when I removed takedef of "analyze"
and

"gen", ant compile work correct, but ant test-hello (which only depends
on
compile), reported error again:

C:\download\minijre\build.xml:56: Execute failed: java.io.IOException:
Cannot run program "${target}
\bin\java": CreateProcess error=2, The system cannot find the file
specified

And I found ${target} is never defined, do you mean ${target.dir} here?
${cns} ${origin} ${test} should also be ${cns.dir} ${origin.dir}
${test.dir}

After fixing these variables and copy Harmony JRE to "origin" dir, I
can
run "ant test-hello" successfully. The target directory should be
minijre,
the size of "lib" is reduced from 40.1MB to 10.4MB, looks great!!

I'm waiting Daniel's description, so didn't try the agent yet :)



 On Wed, Aug 5, 2009 at 3:44 PM, Regis <xu.re...@gmail.com> wrote:

 Daniel Gong wrote:

  Hi all,
 I have my code attached in issue HARMONY-6291 on JIRA. I'd like to
call
it
MinJre Toolkit.

Now the coding of MinJreToolkit is almost complete. It includes
functional
classes as well as command line tool and ant task implemented based
on
them.
More, for dynamic tracing, a jvmti agent has been implemented. Both
static
analysis and dynamic tracing produce a type of result file called
cns
(Class
Name Set) file, which has an associated data structure called
ClassNameSet
that can be created from a cns file, witten to a cns file and merged
with
a
cns file. The cns file in the conf directory contains the required
classes
for different jre implementations. Now it only supports Harmony.

The toolkit can be used in two steps. First, employ both static
analyzer
and
dynamic tracer in the process of application development and test,
and
record necessary information in several cns files. Second, employ
the
jre
generator to merge these cns files and generate a new jre from an
original
one.

So far I have written a simple ant build file to handle the whole
process
including compile, test, pack & javadoc. The compiling of the agent
is
not
in because I'm still learning ant usage. The test is also very
simple,
just
a helloworld app:P

I'll improve the toolkit by adding command line script, optimizing
ant
build, doing more test and improve the algorithm if a better
strategy
is
found.

Everyone please feel free to give me advice or report bugs to
me~thx:)

Daniel Gong


 Well done Daniel!

 I'm trying to build the tool. I downloaded minjretoolkit.tar.gz
from
HARMONY-6291, and extract it, then run "ant" or "ant compile", but
got
a
error:

c:\download\minijre\build.xml:23: taskdef class
org.crazynut.harmony.minjre.anttask.AnalyzeDependenc
yTask cannot be found

Did I miss anything?

--
Best Regards,
Regis.


 --

Best Regards,
Regis.


 I tried the new one, the build script worked fine for me. Following
the
instructions on JIRA, I generated dynamic trace by agent and merged with
static one successfully, seems you have finished the core part of this
tool,
well done!!

While there are still places can be improved:

Dear all,

1. add build scrip for native code, "ant compile" will compile both java
and
native.

Done.

2. -agentlib:Agent=help print help info about how to use this agent. I you
type java -agentlib:jdwp=help to see the example. The options of agent
usually is name=value pattern, maybe something like: java
-agentlib:Agent=tracefile=[filename]

Done. Usage: java -agentlib:tracer=output=[filename]

The zip file attached to HARMONY-6291 is the newest version of MinJre
Toolkit.

The ant build file can compile and test jvmti agent now.

I have tested it under Windows XP SP3 & Ubuntu 9.04.

The script directory is command line launcher for the analyzer and jregen,
not implemented yet, but in my plan.

Best Regards,

Daniel Gong


Hi Daniel,

The new package on JIRA is good! I tried on Windows XP and Ubuntu 8.04.2,
all worked fine except when trying to run generated java, it complained
"Permission denied", after I added execution permission, it worked smoothly.

I think it's time to integrate  Daniel's work to Harmony repository, so
Daniel can work with community easily and closely, and also anyone
interested on this could work on this. If no one object I'm going to apply
HARMONY-6291 to [1].


[1] https://svn.apache.org/repos/asf/harmony/enhanced/tools/trunk/minijre

--
Best Regards,
Regis.




--
Best Regards,
Regis.

Reply via email to