From: Sascha H. <sa...@xm...> - 2011-01-20 23:53:36
|
Hmm this is indeed interesting. I think your change definitely makes sense and is the proper way of doing this, so thank you for this. I just made the change. However, I am now very curious on why you experience this issue. I haven't seen a system where the constructor layout was different. What Java Compiler and Runtime Environment are you using? Thanks a lot! // Sascha On Fri, Jan 21, 2011 at 12:23 AM, Sal <sv...@gm...> wrote: > > Not a problem. With the change reverted: > > ------ > > [01/20/11 18:19:15.543] WARNING: Using test as application name > [01/20/11 18:19:15.544] DEBUG: Forcing --enable_ref_counting for target > IPHONE > [01/20/11 18:19:15.560] DEBUG: Instantiated: > org.xmlvm.proc.in.InputProcess$ClassInputProcess > [01/20/11 18:19:15.560] DEBUG: Instantiated: > org.xmlvm.proc.in.InputProcess$ClassInputProcess for > "C:\dev\workspace2\xmlvm\bin\org\xmlvm\test\ReflectionTest.class" > [01/20/11 18:19:15.570] DEBUG: Instantiated: > org.xmlvm.proc.out.IPhoneOutputProcess > [01/20/11 18:19:15.571] DEBUG: Instantiated: > org.xmlvm.proc.out.ObjectiveCOutputProcess > [01/20/11 18:19:15.575] DEBUG: Adding preprocess > org.xmlvm.proc.out.ObjectiveCOutputProcess to process > org.xmlvm.proc.out.IPhoneOutputProcess > java.lang.IllegalArgumentException: wrong number of arguments > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) > at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown > Source) > at java.lang.reflect.Constructor.newInstance(Unknown Source) > at > org.xmlvm.proc.XmlvmProcessImpl.createInputInstances(XmlvmProcessImpl.java:132) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline(XmlvmProcessor.java:182) > at org.xmlvm.proc.XmlvmProcessor.process(XmlvmProcessor.java:135) > at org.xmlvm.Main.main(Main.java:54) > java.lang.IllegalArgumentException: wrong number of arguments > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) > at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown > Source) > at java.lang.reflect.Constructor.newInstance(Unknown Source) > at > org.xmlvm.proc.XmlvmProcessImpl.createInputInstances(XmlvmProcessImpl.java:132) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206)[01/20/11 > 18:19:15.604] DEBUG: Instantiated: org.xmlvm.proc.out.ExeToXmlvmProcess > [01/20/11 18:19:15.604] DEBUG: Adding preprocess > org.xmlvm.proc.out.ExeToXmlvmProcess to process > org.xmlvm.proc.out.ObjectiveCOutputProcess > [01/20/11 18:19:15.604] DEBUG: Instantiated: > org.xmlvm.proc.out.XmlvmToXmlvmProcess > [01/20/11 18:19:15.604] DEBUG: Adding preprocess > org.xmlvm.proc.out.XmlvmToXmlvmProcess to process > org.xmlvm.proc.out.ObjectiveCOutputProcess > > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline(XmlvmProcessor.java:182) > at org.xmlvm.proc.XmlvmProcessor.process(XmlvmProcessor.java:135) > at org.xmlvm.Main.main(Main.java:54) > java.lang.IllegalArgumentException: wrong number of arguments > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) > at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown > Source) > at java.lang.reflect.Constructor.newInstance(Unknown Source) > at > org.xmlvm.proc.XmlvmProcessImpl.createInputInstances(XmlvmProcessImpl.java:132) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline0(XmlvmProcessor.java:206) > at > org.xmlvm.proc.XmlvmProcessor.buildProcessingPipeline(XmlvmProcessor.java:182) > at org.xmlvm.proc.XmlvmProcessor.process(XmlvmProcessor.java:135) > at org.xmlvm.Main.main(Main.java:54) > [01/20/11 18:19:15.608] ERROR: There are still 1 processes left. > [01/20/11 18:19:15.608] ERROR: Something went wrong during processing. > > > On Thu, Jan 20, 2011 at 6:19 PM, Sascha Haeberling <sa...@xm...>wrote: > >> Can you undo the change and send me the output again? The scenario you >> describe should work fine without any code changes. >> >> Thanks. >> >> >> On Fri, Jan 21, 2011 at 12:16 AM, Sal <sv...@gm...> wrote: >> >>> >>> Everything seems to work with that code change in place, Sascha. I have >>> a nice XCode project generated now. =) I have not yet compiled in XCode >>> as I am away from my mac at the moment. >>> >>> Not sure what the root cause was - maybe just that my Java compiler >>> generates Constructors differently in some cases. So index [0] refers to >>> the other constructor (I noticed there are multiple in some cases.) >>> >>> Maybe it is a good idea to push the fix to SVN ? >>> >>> Thanks much for all the help - I hope to contribute some useful things >>> soon! >>> >>> ------- >>> >>> [01/20/11 18:06:56.187] WARNING: Using test as application name >>> [01/20/11 18:06:56.187] DEBUG: Forcing --enable_ref_counting for >>> target IPHONE >>> [01/20/11 18:06:56.204] DEBUG: Instantiated: >>> org.xmlvm.proc.in.InputProcess$ClassInputProcess >>> [01/20/11 18:06:56.204] DEBUG: Instantiated: >>> org.xmlvm.proc.in.InputProcess$ClassInputProcess for >>> "C:\dev\workspace2\xmlvm\bin\org\xmlvm\test\ReflectionTest.class" >>> [01/20/11 18:06:56.214] DEBUG: Instantiated: >>> org.xmlvm.proc.out.IPhoneOutputProcess >>> [01/20/11 18:06:56.215] DEBUG: Instantiated: >>> org.xmlvm.proc.out.ObjectiveCOutputProcess >>> [01/20/11 18:06:56.219] DEBUG: Adding preprocess >>> org.xmlvm.proc.out.ObjectiveCOutputProcess to process >>> org.xmlvm.proc.out.IPhoneOutputProcess >>> [01/20/11 18:06:56.248] DEBUG: Instantiated: >>> org.xmlvm.proc.out.DEXmlvmOutputProcess >>> [01/20/11 18:06:56.251] DEBUG: Adding preprocess >>> org.xmlvm.proc.out.DEXmlvmOutputProcess to process >>> org.xmlvm.proc.out.ObjectiveCOutputProcess >>> [01/20/11 18:06:56.251] DEBUG: Instantiated: >>> org.xmlvm.proc.out.ExeToXmlvmProcess >>> [01/20/11 18:06:56.251] DEBUG: Adding preprocess >>> org.xmlvm.proc.out.ExeToXmlvmProcess to process >>> org.xmlvm.proc.out.ObjectiveCOutputProcess >>> [01/20/11 18:06:56.251] DEBUG: Instantiated: >>> org.xmlvm.proc.out.XmlvmToXmlvmProcess >>> [01/20/11 18:06:56.251] DEBUG: Adding preprocess >>> org.xmlvm.proc.out.XmlvmToXmlvmProcess to process >>> org.xmlvm.proc.out.ObjectiveCOutputProcess >>> [01/20/11 18:06:56.252] DEBUG: Adding preprocess >>> org.xmlvm.proc.in.InputProcess$ClassInputProcess to process >>> org.xmlvm.proc.out.DEXmlvmOutputProcess >>> [01/20/11 18:06:56.253] DEBUG: DEXmlvmOutputProcess: Getting resource >>> from cache: C:\dev\workspace2\xmlvm\bin\org\xmlvm\test\ReflectionTest.class >>> [01/20/11 18:06:57.111] DEBUG: Processing IPhoneOutputProcess >>> [01/20/11 18:06:57.348] DEBUG: Processing finished successfully. >>> [01/20/11 18:06:57.811] DEBUG: Files written successfully. >>> [01/20/11 18:06:57.811] DEBUG: Post-Processing successful. >>> >>> >>> On Thu, Jan 20, 2011 at 5:55 PM, Sascha Haeberling <sa...@xm...>wrote: >>> >>>> This will not solve your problem. The issue is, that none of the correct >>>> inputs is executed, because it cannot find the input it is looking for. It >>>> is probably loading the EmptyInputProcess. >>>> >>>> Can you use --debug=all and post the output here? >>>> >>>> Thanks >>>> // Sascha >>>> >>>> >>>> On Thu, Jan 20, 2011 at 11:37 PM, Sal <sv...@gm...> wrote: >>>> >>>>> >>>>> I seem to have fixed the error by changing the following in >>>>> XmlvmProcessImpl.java:131 >>>>> >>>>> XmlvmProcess<?> process = (XmlvmProcess<?>) >>>>> >>>>> //supportedClass.getConstructors()[0] <----- >>>>> removed this and added below line >>>>> >>>>> supportedClass.getConstructor(arguments.getClass()) >>>>> >>>>> .newInstance(arguments); >>>>> >>>>> I hope it is correct? >>>>> >>>>> On Thu, Jan 20, 2011 at 5:11 PM, Sascha Haeberling <sa...@xm...>wrote: >>>>> >>>>>> Hi Sal, >>>>>> >>>>>> the error message is unfortunate and wrong. I think something is wrong >>>>>> with your paths. Make sure the input file actually exists. My guess is that >>>>>> it doesn't. >>>>>> >>>>>> Also the output path looks wrong. You use forward slashes. >>>>>> >>>>>> // Sascha >>>>>> >>>>>> >>>>>> On Thu, Jan 20, 2011 at 11:08 PM, Sal <sv...@gm...> wrote: >>>>>> >>>>>>> After pulling the latest from SVN, I tried xmlvm using command >>>>>>> parameters: >>>>>>> >>>>>>> --in=C:\dev\workspace2\xmlvm\bin\org\xmlvm\test\ReflectionTest.class >>>>>>> --out=c:/tmp/test --target=iphone >>>>>>> >>>>>>> Execution gives the below exception. Am I doing anything wrong? I >>>>>>> am going to proceed to debug - if I'm able to get it to work I'll be happy >>>>>>> to submit a patch. Thanks much in advance for any tips!! >>>>>>> >>>>>>> [01/20/11 17:02:26.334] WARNING: Using test as application name >>>>>>> [01/20/11 17:02:26.335] DEBUG: Forcing --enable_ref_counting for >>>>>>> target IPHONE >>>>>>> java.lang.IllegalArgumentException: wrong number of arguments >>>>>>> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native >>>>>>> Method) >>>>>>> at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown >>>>>>> Source) >>>>>>> at >>>>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) >>>>>>> at java.lang.reflect.Constructor.newInstance(Unknown Source) >>>>>>> at >>>>>>> org.xmlvm.proc.XmlvmProcessImpl.createInputInstances(XmlvmProcessImpl.java:127) >>>>>>> >>>>>>> >>>>>>> ------------------------------------------------------------------------------ >>>>>>> Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)! >>>>>>> Finally, a world-class log management solution at an even better >>>>>>> price-free! >>>>>>> _______________________________________________ >>>>>>> xmlvm-users mailing list >>>>>>> xml...@li... >>>>>>> https://lists.sourceforge.net/lists/listinfo/xmlvm-users >>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >> > |