This Ruby script thing is too complicated & we can't expect all the people who build our platform to install Ruby & gems and what not. So, let's get rid of the Ruby script & replace it with a sh & bat file. I will look into the sh file, someone on Windows please look into the bat file.
On Tue, Mar 20, 2012 at 11:04 AM, Supun Malinga <[email protected]> wrote: > > > On Tue, Mar 20, 2012 at 10:56 AM, Thilini Ishaka <[email protected]> wrote: > >> >> >> On Tue, Mar 20, 2012 at 10:50 AM, Chintana Wilamuna <[email protected]>wrote: >> >>> Hi, >>> >>> Try doing a # gem install zip >>> >> Yes. >> sudo apt-get install libzip-ruby1.8 >> > > libzip-ruby1.9.1 is latest it seems. > > thanks, > >> >> >>> >>> You need to have rubygems installed - http://rubygems.org/pages/download >>> >>> -Chintana >>> >>> >>> On Tue, Mar 20, 2012 at 5:44 AM, Afkham Azeez <[email protected]> wrote: >>> >>>> How do you manually run this ruby script? >>>> >>>> ruby gen_emma_coverage.rb instrument >>>> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home >>>> >>>> Above command did not work on Mac OS X. >>>> >>>> I got the following error. >>>> >>>> gen_emma_coverage.rb:3:in `require': no such file to load -- zip/zip >>>> (LoadError) >>>> from gen_emma_coverage.rb:3 >>>> >>>> >>>> On Tue, Mar 20, 2012 at 9:59 AM, Charitha Kankanamge <[email protected] >>>> > wrote: >>>> >>>>> *.em file (EMMA meta data holder) has been generated by "instr" >>>>> command (xargs -n 1 $JAVA_HOME/jre/bin/java -cp emma.jar emma instr >>>>> -m overwrite -cp < jarlist.txt), so this command execution did not happen >>>>> correctly or failed. >>>>> >>>>> [1] http://emma.sourceforge.net/userguide/ar01s02s03.html >>>>> >>>>> >>>>> >>>>> On Tue, Mar 20, 2012 at 9:12 AM, Afkham Azeez <[email protected]> wrote: >>>>> >>>>>> OK. I got the hang of it. But now it is failing with the following >>>>>> error. >>>>>> >>>>>> Caused by: java.io.FileNotFoundException: Source >>>>>> '/Users/azeez/projects/wso2/org/carbon/kernel/trunk/distribution/integration/tests/target/carbontmp1332214836127/wso2carbon-core-4.0.0-SNAPSHOT/coverage.em' >>>>>> does not exist >>>>>> at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:767) >>>>>> at >>>>>> org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:706) >>>>>> at >>>>>> org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:670) >>>>>> at >>>>>> org.wso2.carbon.integration.framework.utils.ServerUtils.instrumentJarsForEmma(ServerUtils.java:232) >>>>>> at >>>>>> org.wso2.carbon.integration.framework.utils.ServerUtils.startServerUsingCarbonHome(ServerUtils.java:55) >>>>>> >>>>>> >>>>>> On Tue, Mar 20, 2012 at 8:44 AM, Afkham Azeez <[email protected]> wrote: >>>>>> >>>>>>> Can you please explain how that method works? >>>>>>> >>>>>>> 1. What does the following block do? >>>>>>> >>>>>>> for (File file : new File(emmaHome).listFiles()) { >>>>>>> if >>>>>>> (file.getName().startsWith("org.wso2.carbon.integration.core")) { >>>>>>> ArchiveManipulator archiveManipulator = new >>>>>>> ArchiveManipulator(); >>>>>>> >>>>>>> archiveManipulator.extract(file.getAbsolutePath(), emmaHome); >>>>>>> } else if (file.getName().startsWith("emma")) { >>>>>>> emmaJarName = file.getName(); >>>>>>> } >>>>>>> } >>>>>>> >>>>>>> >>>>>>> 2. What does the following block do? >>>>>>> >>>>>>> for (File file : new File[]{new File(carbonHome), emmaOutput}) { >>>>>>> FileUtils.copyFileToDirectory(new File(carbonHome + >>>>>>> File.separator + "lib" + >>>>>>> File.separator + "emma.jar"), file); >>>>>>> FileUtils.copyFileToDirectory(new File(emmaHome + >>>>>>> "gen_emma_coverage.rb"), file); >>>>>>> FileUtils.copyFileToDirectory(new File(jarList), >>>>>>> file); >>>>>>> } >>>>>>> >>>>>>> gen_emma_coverage.rb is inside the resources directory in the Maven >>>>>>> module. How does it get picked? >>>>>>> >>>>>>> >>>>>>> On Tue, Mar 20, 2012 at 8:28 AM, Thilini Ishaka <[email protected]>wrote: >>>>>>> >>>>>>>> If I recall, we initially generated the coverage report manually by >>>>>>>> using below set of steps. >>>>>>>> Then the ServerUtils is used to handle that. >>>>>>>> >>>>>>>> 1. Create a jarlist.txt >>>>>>>> eg:* find >>>>>>>> /home/thilini/Desktop/wso2greg-3.6.0/repository/components/plugins/ >> >>>>>>>> /home/thilini/Desktop/wso2greg-3.6.0/repository/components/plugins/jarlist.txt >>>>>>>> * (jarlist.txt should contain absolute paths of jars. Remove >>>>>>>> unwanted jars from the list. If not there will be issues when starting >>>>>>>> the >>>>>>>> server) >>>>>>>> >>>>>>>> 2. xargs -n 1 $JAVA_HOME/jre/bin/java -cp emma.jar emma instr -m >>>>>>>> overwrite -cp < jarlist.txt >>>>>>>> 3. ruby dynamicImportsPatcher.rb < jarlist.txt (Before running >>>>>>>> this step need to install rubyzip. Use sudo apt-get install >>>>>>>> libzip-ruby1.8) >>>>>>>> 4. Copy emma.jar to */repository/components/plugins, >>>>>>>> /repository/components/lib *and */lib *directories. >>>>>>>> 4. Start Carbon Server >>>>>>>> 5. Do the test >>>>>>>> 6. Shutdown server >>>>>>>> 7. cp wso2greg-3.6.0/coverage.ec . >>>>>>>> 8. java -cp emma.jar emma report -r html -in coverage.em, >>>>>>>> coverage.ec >>>>>>>> >>>>>>>> <http://coverage.ec/>Thanks >>>>>>>> Thilini >>>>>>>> >>>>>>>> On Tue, Mar 20, 2012 at 8:02 AM, Afkham Azeez <[email protected]>wrote: >>>>>>>> >>>>>>>>> Emma has been disabled for the past few months, and inevitably, >>>>>>>>> the code that does the instrumentation does not work. Can the person >>>>>>>>> who >>>>>>>>> wrote the following method please explain how it works? >>>>>>>>> >>>>>>>>> public synchronized static void instrumentJarsForEmma(String >>>>>>>>> carbonHome) throws IOException { >>>>>>>>> String workingDir = System.getProperty("user.dir"); >>>>>>>>> try { >>>>>>>>> System.setProperty("user.dir", carbonHome); >>>>>>>>> String emmaHome = System.getProperty("emma.home"); >>>>>>>>> if (emmaHome == null) { >>>>>>>>> return; >>>>>>>>> } else if (!emmaHome.endsWith(File.separator)) { >>>>>>>>> emmaHome += File.separator; >>>>>>>>> } >>>>>>>>> File emmaOutput = new >>>>>>>>> File(System.getProperty("emma.output")); >>>>>>>>> if (!emmaOutput.exists()) { >>>>>>>>> FileUtils.forceMkdir(emmaOutput); >>>>>>>>> } >>>>>>>>> String emmaJarName = null; >>>>>>>>> for (File file : new File(emmaHome).listFiles()) { >>>>>>>>> if >>>>>>>>> (file.getName().startsWith("org.wso2.carbon.integration.core")) { >>>>>>>>> ArchiveManipulator archiveManipulator = new >>>>>>>>> ArchiveManipulator(); >>>>>>>>> >>>>>>>>> archiveManipulator.extract(file.getAbsolutePath(), emmaHome); >>>>>>>>> } else if (file.getName().startsWith("emma")) { >>>>>>>>> emmaJarName = file.getName(); >>>>>>>>> } >>>>>>>>> } >>>>>>>>> >>>>>>>>> if (emmaJarName == null) { >>>>>>>>> return; >>>>>>>>> } >>>>>>>>> >>>>>>>>> String jarList = System.getProperty("jar.list"); >>>>>>>>> >>>>>>>>> >>>>>>>>> FileUtils.copyFile(new File(emmaHome + emmaJarName), >>>>>>>>> new File(carbonHome + File.separator + >>>>>>>>> "repository" + >>>>>>>>> File.separator + "components" + >>>>>>>>> File.separator + "plugins" + >>>>>>>>> File.separator + "emma.jar")); >>>>>>>>> FileUtils.copyFile(new File(emmaHome + emmaJarName), >>>>>>>>> new File(carbonHome + File.separator + >>>>>>>>> "repository" + >>>>>>>>> File.separator + "components" + >>>>>>>>> File.separator + "lib" + >>>>>>>>> File.separator + "emma.jar")); >>>>>>>>> FileUtils.copyFile(new File(emmaHome + emmaJarName), >>>>>>>>> new File(carbonHome + File.separator + "lib" + >>>>>>>>> File.separator + "emma.jar")); >>>>>>>>> for (File file : new File[]{new File(carbonHome), >>>>>>>>> emmaOutput}) { >>>>>>>>> FileUtils.copyFileToDirectory(new File(carbonHome >>>>>>>>> + File.separator + "lib" + >>>>>>>>> File.separator + "emma.jar"), file); >>>>>>>>> FileUtils.copyFileToDirectory(new File(emmaHome + >>>>>>>>> "gen_emma_coverage.rb"), file); >>>>>>>>> FileUtils.copyFileToDirectory(new File(jarList), >>>>>>>>> file); >>>>>>>>> } >>>>>>>>> >>>>>>>>> String temp; >>>>>>>>> Process process = Runtime.getRuntime().exec(new >>>>>>>>> String[]{"ruby", >>>>>>>>> "gen_emma_coverage.rb", "instrument", >>>>>>>>> System.getenv("JAVA_HOME")}, null, >>>>>>>>> new File(carbonHome)); >>>>>>>>> BufferedReader reader = new BufferedReader( >>>>>>>>> new >>>>>>>>> InputStreamReader(process.getInputStream())); >>>>>>>>> try { >>>>>>>>> while ((temp = reader.readLine()) != null) { >>>>>>>>> System.out.println(temp); >>>>>>>>> } >>>>>>>>> } catch (IOException ignored) { >>>>>>>>> } >>>>>>>>> FileUtils.copyFileToDirectory(new File(carbonHome + >>>>>>>>> File.separator + "coverage.em"), >>>>>>>>> emmaOutput); >>>>>>>>> } finally { >>>>>>>>> System.setProperty("user.dir", workingDir); >>>>>>>>> } >>>>>>>>> } >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Afkham Azeez* >>>>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com >>>>>>>>> Member; Apache Software Foundation; http://www.apache.org/ >>>>>>>>> * <http://www.apache.org/>** >>>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>>>>>>> twitter: >>>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>>>>>>> * >>>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>>>>>>> * >>>>>>>>> * >>>>>>>>> *Lean . Enterprise . Middleware* >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> *Regards* >>>>>>>> >>>>>>>> *Thilini Ishaka* >>>>>>>> *WSO2 Inc. http://wso2.com >>>>>>>> * >>>>>>>> *Mobile: +94 71 840 8171 * >>>>>>>> * +94 77 211 8797* >>>>>>>> *Bolg: thiliniishaka.blogspot.com* >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Afkham Azeez* >>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com >>>>>>> Member; Apache Software Foundation; http://www.apache.org/ >>>>>>> * <http://www.apache.org/>** >>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>>>>> twitter: >>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>>>>> * >>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>>>>> * >>>>>>> * >>>>>>> *Lean . Enterprise . Middleware* >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Afkham Azeez* >>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com >>>>>> Member; Apache Software Foundation; http://www.apache.org/ >>>>>> * <http://www.apache.org/>** >>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>>>> twitter: >>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>>>> * >>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>>>> * >>>>>> * >>>>>> *Lean . Enterprise . Middleware* >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Dev mailing list >>>>>> [email protected] >>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> *Afkham Azeez* >>>> Director of Architecture; WSO2, Inc.; http://wso2.com >>>> Member; Apache Software Foundation; http://www.apache.org/ >>>> * <http://www.apache.org/>** >>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>> twitter: >>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>> * >>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>> * >>>> * >>>> *Lean . Enterprise . Middleware* >>>> >>>> >>> >>> >>> -- >>> Chintana Wilamuna >>> Associate Technical Lead >>> WSO2, Inc.; http://wso2.com >>> lean.enterprise.middleware >>> >>> phone: +94 75 211 1106 >>> blog: http://engwar.com/ >>> photos: http://flickr.com/photos/chintana >>> linkedin: http://www.linkedin.com/in/engwar >>> twitter: twitter.com/std_err >>> >>> >> >> >> -- >> *Regards* >> >> *Thilini Ishaka* >> *WSO2 Inc. http://wso2.com >> * >> *Mobile: +94 71 840 8171 * >> * +94 77 211 8797* >> *Bolg: thiliniishaka.blogspot.com* >> >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > Supun Malinga, > > Software Engineer, > WSO2 Inc. > http://wso2.com > http://wso2.org > email - [email protected] <[email protected]> > mobile - 071 56 91 321 > > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- *Afkham Azeez* Director of Architecture; WSO2, Inc.; http://wso2.com Member; Apache Software Foundation; http://www.apache.org/ * <http://www.apache.org/>** email: **[email protected]* <[email protected]>* cell: +94 77 3320919 blog: **http://blog.afkham.org* <http://blog.afkham.org>* twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> * linked-in: **http://lk.linkedin.com/in/afkhamazeez* * * *Lean . Enterprise . Middleware*
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
