How to build kulla.jar
andrei.eremeev
andrei.eremeev at oracle.com
Tue Apr 14 08:57:08 UTC 2015
Hi Martijn,
> Hi Mani/All,
>
> I'm running across compile issues like:
>
> src/impl/CompletenessAnalyzer.java:28: error: package
> com.sun.tools.javac.code does not exist
> import com.sun.tools.javac.code.Source;
> ^
What JDK do you use to build/run REPL? JDK 8?
Clone and build this JDK:
hg clone http://hg.openjdk.java.net/kulla/dev repl
cd repl
bash get_source.sh
make images
Building might require installing additional packages.
Thereafter, set and export JAVA_HOME:
${PATH-TO-REPO}/build/${OS}/images/jdk and PATH: ${JAVA_HOME}/bin:${PATH}.
Ensure that the version of JDK is 1.9:
java -version
> Also as an aside, the shell script assumes Linux (Mac OS X has sh located
> at #!/bin/sh)
Run script as "sh scripts/compile.sh" or "bash scripts/compile.sh".
>
>
> Cheers,
> Martijn
Andrei Eremeev
>
> On 14 April 2015 at 00:25, Mani Sarkar <sadhak001 at gmail.com> wrote:
>
>> Thanks Robert, works like charm, also figured out how to create the jar
>> for it.
>>
>> Cheers,
>> Mani
>>
>> On Sun, Apr 12, 2015 at 3:31 PM, Robert Field <robert.field at oracle.com>
>> wrote:
>>
>>> Yes, that is the right library. Get that library and install on your
>>> machine. There is an environment variable in compile.sh -- don't have
>>> access right now so I don't remainder is name but it should be obvious --
>>> set that environment variable to the location of the unpacked jline2
>>> library.
>>>
>>> Then run using the run.sh script.
>>>
>>> Hour that helps,
>>> Robert
>>>
>>>
>>>
>>>
>>> On April 12, 2015 6:58:38 AM Mani Sarkar <sadhak001 at gmail.com> wrote:
>>>
>>> To give some more information from the above, when I did the below:
>>>> sh ./scripts/compile.sh
>>>>
>>>> Here's the response we got:
>>>>
>>>> src/tool/Repl.java:88: error: package jline.console does not exist
>>>> import jline.console.ConsoleReader;
>>>> ^
>>>> src/tool/Repl.java:89: error: package jline.console does not exist
>>>> import jline.console.KeyMap;
>>>> ^
>>>> src/tool/Repl.java:90: error: package jline.console.completer does not
>>>> exist
>>>> import jline.console.completer.Completer;
>>>> ^
>>>> src/tool/Repl.java:91: error: package jline.console.history does not
>> exist
>>>> import jline.console.history.History;
>>>> ^
>>>> src/tool/Repl.java:92: error: package jline.console.history does not
>> exist
>>>> import jline.console.history.MemoryHistory;
>>>> ^
>>>> src/tool/Repl.java:1502: error: cannot find symbol
>>>> final ConsoleReader in;
>>>> ^
>>>> symbol: class ConsoleReader
>>>> location: class ConsoleIOContext
>>>> src/tool/Repl.java:1645: error: cannot find symbol
>>>> private final class EditingHistory implements History {
>>>> ^
>>>> symbol: class History
>>>> location: class ConsoleIOContext
>>>> src/tool/Repl.java:1647: error: cannot find symbol
>>>> private final History fullHistory;
>>>> ^
>>>> symbol: class History
>>>> location: class ConsoleIOContext.EditingHistory
>>>> src/tool/Repl.java:1648: error: cannot find symbol
>>>> private History currentDelegate;
>>>> ^
>>>> symbol: class History
>>>> location: class ConsoleIOContext.EditingHistory
>>>> src/tool/Repl.java:1650: error: cannot find symbol
>>>> public EditingHistory(History delegateTo) {
>>>> ^
>>>> symbol: class History
>>>> location: class ConsoleIOContext.EditingHistory
>>>> error: Class names, 'build', are only accepted if annotation processing
>> is
>>>> explicitly requested
>>>> src/tool/Repl.java:1507: error: cannot find symbol
>>>> in = new ConsoleReader(cmdin, cmdout);
>>>> ^
>>>> symbol: class ConsoleReader
>>>> location: class ConsoleIOContext
>>>> src/tool/Repl.java:1532: error: cannot find symbol
>>>> in.addCompleter(new Completer() {
>>>> ^
>>>> symbol: class Completer
>>>> location: class ConsoleIOContext
>>>> src/tool/Repl.java:1596: error: cannot find symbol
>>>> KeyMap km = in.getKeys();
>>>> ^
>>>> symbol: class KeyMap
>>>> location: class ConsoleIOContext
>>>> src/tool/Repl.java:1599: error: cannot find symbol
>>>> if (value instanceof KeyMap) {
>>>> ^
>>>> symbol: class KeyMap
>>>> location: class ConsoleIOContext
>>>> src/tool/Repl.java:1600: error: cannot find symbol
>>>> km = (KeyMap) value;
>>>> ^
>>>> symbol: class KeyMap
>>>> location: class ConsoleIOContext
>>>> src/tool/Repl.java:1655: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1660: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1665: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1670: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1677: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1682: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1687: error: cannot find symbol
>>>> if (!(entry.value() instanceof
>>>> NarrowingHistoryLine))
>>>> ^
>>>> symbol: method value()
>>>> location: variable entry of type Entry
>>>> src/tool/Repl.java:1689: error: cannot find symbol
>>>> int[] cluster = ((NarrowingHistoryLine)
>>>> entry.value()).span;
>>>> ^
>>>> symbol: method value()
>>>> location: variable entry of type Entry
>>>> src/tool/Repl.java:1691: error: cannot find symbol
>>>> currentDelegate = new MemoryHistory();
>>>> ^
>>>> symbol: class MemoryHistory
>>>> location: class ConsoleIOContext.EditingHistory
>>>> src/tool/Repl.java:1722: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1729: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1736: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1743: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1750: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1757: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1762: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1767: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1772: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1777: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1782: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1787: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1792: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1797: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> src/tool/Repl.java:1802: error: method does not override or implement a
>>>> method from a supertype
>>>> @Override
>>>> ^
>>>> 40 errors
>>>>
>>>> Cheers,
>>>> Mani
>>>>
>>>> On Sun, Apr 12, 2015 at 1:50 PM, Mani Sarkar <sadhak001 at gmail.com>
>> wrote:
>>>>> Hi,
>>>>>
>>>>> I'm at the LJC hackday in London and we are trying out Kulla and would
>>>>> like to know how to go about build kulla.jar from the OpenjDK code
>>>> base, I
>>>>> came across this link (README file)
>>>>>
>>>>>
>>>>> http://hg.openjdk.java.net/kulla/dev/langtools/file/
>>>> 4933dc482be7/repl/README
>>>>> but no luck trying to build it.
>>>>>
>>>>> What should this variable point to JLINE2LIB ? Is this the same
>> library
>>>> as
>>>>> https://github.com/jline/jline2 ?
>>>>>
>>>>> Any help is appreciated.
>>>>>
>>>>> Cheers,
>>>>> Mani
>>>>>
>>>>> --
>>>>> @theNeomatrix369 <http://twitter.com/theNeomatrix369>* | **Blog
>>>>> <http://neomatrix369.wordpress.com>** | *LJC Associate & LJC
>> Advocate
>>>>> (@adoptopenjdk & @adoptajsr programs)
>>>>> *Meet-a-Project - *MutabilityDetector
>>>>> <https://github.com/MutabilityDetector>* | **Bitbucket
>>>>> <https://bitbucket.org/neomatrix369>* * | **Github
>>>>> <https://github.com/neomatrix369>* * | **LinkedIn
>>>>> <http://uk.linkedin.com/pub/mani-sarkar/71/a77/39b>*
>>>>> *Come to Devoxx UK 2015:* http://www.devoxx.co.uk/
>>>>>
>>>>> *Don't chase success, rather aim for "Excellence", and success will
>> come
>>>>> chasing after you!*
>>>>>
>>>>
>>>>
>>>> --
>>>> @theNeomatrix369 <http://twitter.com/theNeomatrix369>* | **Blog
>>>> <http://neomatrix369.wordpress.com>** | *LJC Associate & LJC Advocate
>>>> (@adoptopenjdk & @adoptajsr programs)
>>>> *Meet-a-Project - *MutabilityDetector
>>>> <https://github.com/MutabilityDetector>* | **Bitbucket
>>>> <https://bitbucket.org/neomatrix369>* * | **Github
>>>> <https://github.com/neomatrix369>* * | **LinkedIn
>>>> <http://uk.linkedin.com/pub/mani-sarkar/71/a77/39b>*
>>>> *Come to Devoxx UK 2015:* http://www.devoxx.co.uk/
>>>>
>>>> *Don't chase success, rather aim for "Excellence", and success will come
>>>> chasing after you!*
>>>>
>>>
>>>
>>
>> --
>> @theNeomatrix369 <http://twitter.com/theNeomatrix369>* | **Blog
>> <http://neomatrix369.wordpress.com>** | *LJC Associate & LJC Advocate
>> (@adoptopenjdk & @adoptajsr programs)
>> *Meet-a-Project - *MutabilityDetector
>> <https://github.com/MutabilityDetector>* | **Bitbucket
>> <https://bitbucket.org/neomatrix369>* * | **Github
>> <https://github.com/neomatrix369>* * | **LinkedIn
>> <http://uk.linkedin.com/pub/mani-sarkar/71/a77/39b>*
>> *Come to Devoxx UK 2015:* http://www.devoxx.co.uk/
>>
>> *Don't chase success, rather aim for "Excellence", and success will come
>> chasing after you!*
>>
More information about the kulla-dev
mailing list