Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #8924
| From | Robert Klemme <shortcutter@googlemail.com> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: preprocessor idea |
| Date | 2011-10-17 18:53 +0200 |
| Message-ID | <9g34seFjqlU1@mid.individual.net> (permalink) |
| References | (1 earlier) <4e94ce75$0$284$14726298@news.sunsite.dk> <9foia2FjbkU1@mid.individual.net> <4e97a33b$0$282$14726298@news.sunsite.dk> <9g127uF848U1@mid.individual.net> <4e9b93ce$0$284$14726298@news.sunsite.dk> |
On 10/17/2011 04:32 AM, Arne Vajhøj wrote:
> On 10/16/2011 5:56 PM, Robert Klemme wrote:
>> On 10/14/2011 04:49 AM, Arne Vajhøj wrote:
>>> On 10/13/2011 12:35 PM, Robert Klemme wrote:
>>>> On 12.10.2011 01:17, Arne Vajhøj wrote:
>>
>>>>> Run the Java code through the C preprocessor with the same defines.
>>>>>
>>>>> String[] javaarray = {
>>>>> "None"
>>>>> #ifdef lib1
>>>>> ,"lib1"
>>>>> #endif
>>>>> #ifdef lib1
>>>>> ,"lib1"
>>>>> #endif
>>>>> };
>>>>
>>>> I do not think it's worthwhile to open that can of worms for this
>>>> decision. After all getting rid of the CPP is one of the major
>>>> advantages of Java over C++ (even Stroustrup regrets not having ripped
>>>> it out of C++) and complicating the Java build process just for that
>>>> decision seems too heavy - especially since there are other solutions
>>>> available.
>>>
>>> What other solution achieve the same?
>>
>> Please see elsewhere in this thread.
>
> Well - they do not seem to be on my news server.
>
> The only suggestion it carry are yours of:
> * changing the logic, which may be a good idea, but is definitely
> not the same
Do you say that because of
> Java does not support any preprocessor
> flags, but in this case I need a tip for creating a flexiable Java code during the class is compiled
> (eg: ifdef1 = true => String[] javaarray = {"lib1"})
? Right, I took the liberty to ignore the specific requirement to
change the Java code because I consider the ultimate task to solve to
only load those libs which can be used. Changing the Java code is just
one means to that end.
> * use JNI to get the info from the native side, which will
> require approx. 10 as much code than this
Well, but the solution to use CPP for Java code will probably need a
similar amount of code - even if it's not in Java but in ant scripts or
Makefiles. And it will be a dramatic change to the build process. One
also needs to decide whether to apply CPP to all Java files or just
selectively to a single one. The first option is probably cleaner from
a build process point of view but increases the risk of bugs (i.e. if
CPP starts replacing things in other files that it is not supposed to
change) while the second solution is an ugly crutch IMHO.
Kind regards
robert
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar
preprocessor idea Philipp Kraus <philipp.kraus@flashpixx.de> - 2011-10-11 20:19 +0200
Re: preprocessor idea Robert Klemme <shortcutter@googlemail.com> - 2011-10-11 21:57 +0200
Re: preprocessor idea markspace <-@.> - 2011-10-11 13:14 -0700
Re: preprocessor idea Arne Vajhøj <arne@vajhoej.dk> - 2011-10-11 19:17 -0400
Re: preprocessor idea Robert Klemme <shortcutter@googlemail.com> - 2011-10-13 18:35 +0200
Re: preprocessor idea Arne Vajhøj <arne@vajhoej.dk> - 2011-10-13 22:49 -0400
Re: preprocessor idea Robert Klemme <shortcutter@googlemail.com> - 2011-10-16 23:56 +0200
Re: preprocessor idea Arne Vajhøj <arne@vajhoej.dk> - 2011-10-16 22:32 -0400
Re: preprocessor idea Robert Klemme <shortcutter@googlemail.com> - 2011-10-17 18:53 +0200
Re: preprocessor idea Roedy Green <see_website@mindprod.com.invalid> - 2011-10-12 07:04 -0700
csiph-web