[ 
https://issues.apache.org/jira/browse/PYLUCENE-40?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16497501#comment-16497501
 ] 

Mithun Paul edited comment on PYLUCENE-40 at 6/1/18 7:10 PM:
-------------------------------------------------------------

So after 2 days, I finally understood that to set JCC_JDK, I don't have to edit 
the setup.py file. The documentation was very confusing in my opinion. While it 
says edit environment variables, it took me days until I found this post which 
told me that JCC_JDK is a LINUX/OS environment variable and nothing to do with 
setup.py. Mainly because , imho, that 1) sentence is really long 2) it starts 
with "edit setup.py" which was very misdirecting and I have been trying to do 
just that. Would have been helpful if it were two or 3 smaller sentences.

 

Anyway, despite explicitly exporting/setting JAVAHOME and JAVA_HOME, the 
setup.py somehow still picks my java 10.  Any idea why? maybe I should just go 
ahead and set all JCC_* environment variables like you said? So does that mean 
$JAVA_HOME is not what the setup.py is picking? As suggested 
[here|http://insidejvmjava.blogspot.com/2015/09/ant-compile-issue-warning-options.html]
 do you think the 1.5 error below has something to do with setup.py picking my 
java 10?

{{~/pylucene/pylucene-7.2.0/jcc]$ echo $JAVAHOME~}}

{{/Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home/}}

{{/pylucene/pylucene-7.2.0/jcc]$ echo $JAVA_HOME}}

{{/Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home}}

{{~/~}}{{~pylucene/pylucene-7.2.0/jcc]$ java -version~}}

{{java version "1.8.0_77"}}{{Java(TM) SE Runtime Environment (build 
1.8.0_77-b03)}}{{Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed 
mode)}}

{{/pylucene/pylucene-7.2.0/jcc]$ sudo python setup.py install}}

{{Password:}}{{}} 

found JAVAHOME = /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home

found JAVAFRAMEWORKS = /System/Library/Frameworks/JavaVM.framework

Traceback (most recent call last):

  File "setup.py", line 449, in <module>

    main('--debug' in sys.argv)

  File "setup.py", line 394, in main

    raise OSError(process.stderr.read())

OSError: warning: [options] bootstrap class path not set in conjunction with 
-source 5

error: Source option 5 is no longer supported. Use 6 or later.

error: Target option 1.5 is no longer supported. Use 1.6 or later

 


was (Author: mpaul588):
So after 2 days, I finally understood that to set JCC_JDK, I don't have to edit 
the setup.py file. The documentation was very confusing in my opinion. While it 
says edit environment variables, it took me days until I found this post which 
told me that JCC_JDK is a LINUX/OS environment variable and nothing to do with 
setup.py. Mainly because , imho, that 1) sentence is really long 2) it starts 
with "edit setup.py" which was very misdirecting and I have been trying to do 
just that. Would have been helpful if it were two or 3 smaller sentences.

 

Anyway, despite explicitly exporting/setting JAVAHOME and JAVA_HOME, the 
setup.py somehow still picks my java 10.  Any idea why? maybe I should just go 
ahead and set all JCC_* environment variables like you said? So does that mean 
$JAVA_HOME is not what the setup.py is picking? As suggested 
[here|http://insidejvmjava.blogspot.com/2015/09/ant-compile-issue-warning-options.html]
 do you think the 1.5 error below has something to do with setup.py picking my 
java 10?

{{~/pylucene/pylucene-7.2.0/jcc]$ echo $JAVAHOME~}}

{{/Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home/}}

{{/pylucene/pylucene-7.2.0/jcc]$ echo $JAVA_HOME}}

{{/Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home}}

{{~/~}}{{~pylucene/pylucene-7.2.0/jcc]$ java -version~}}

{{java version "1.8.0_77"}}{{Java(TM) SE Runtime Environment (build 
1.8.0_77-b03)}}{{Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed 
mode)}}

{{/pylucene/pylucene-7.2.0/jcc]$ sudo python setup.py install}}

{{Password:}}

{{found JAVAHOME = 
/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home}}

{{found JAVAFRAMEWORKS = /System/Library/Frameworks/JavaVM.framework}}

 

found JAVAHOME = /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home

found JAVAFRAMEWORKS = /System/Library/Frameworks/JavaVM.framework

Traceback (most recent call last):

  File "setup.py", line 449, in <module>

    main('--debug' in sys.argv)

  File "setup.py", line 394, in main

    raise OSError(process.stderr.read())

OSError: warning: [options] bootstrap class path not set in conjunction with 
-source 5

error: Source option 5 is no longer supported. Use 6 or later.

error: Target option 1.5 is no longer supported. Use 1.6 or later

 

> Document use of JCC_JDK
> -----------------------
>
>                 Key: PYLUCENE-40
>                 URL: https://issues.apache.org/jira/browse/PYLUCENE-40
>             Project: PyLucene
>          Issue Type: Improvement
>            Reporter: Ryan J Ollos
>            Priority: Minor
>         Attachments: jcc_build_output.txt, jcc_build_output2.txt
>
>
> I found two issues when trying to [help someone on Stack 
> Overflow|https://stackoverflow.com/questions/48711714/] build the library. 
> First, the [documentation on PyPI|https://pypi.python.org/pypi/JCC/] states:
> {quote}JCC’s setup.py file needs to be edited before building JCC to specify 
> the location of the Java Runtime Environment’s header files and libraries.
> {quote}
> However, it appears you have a better mechanism of setting {{JCC_JDK}}, but 
> it's not documented.
> Second, when setting {{JCC_JDK}} is appears to work correctly and use the 
> path to the specified {{JCC_JDK}} in the compilation, but the first line of 
> output might indicate that a different JRE is being used:
> {code:java}
> $JCC_JDK=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home 
> python setup.py install
> found JAVAHOME = 
> /Library/Java/JavaVirtualMachines/jdk1.8.0_141.jdk/Contents/Home
> found JAVAFRAMEWORKS = /System/Library/Frameworks/JavaVM.framework
> ...
> {code}
> So maybe the found {{JAVAHOME}} should not be printed if {{JCC_JDK}} is set, 
> so it appears that {{JCC_JDK}} is successfully overriding the {{JAVAHOME}}. 
> I'll attach the full output from building on my platform.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to