harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Regis <xu.re...@gmail.com>
Subject Re: [GSOC] The code for smallest class set for customer application in now on JIRA
Date Thu, 13 Aug 2009 05:27:52 GMT
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.regis@gmail.com> wrote:
> 
>> Daniel Gong wrote:
>>
>>> On Thu, Aug 6, 2009 at 10:55 AM, Regis <xu.regis@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.regis@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.regis@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.

Mime
View raw message