8
Jak mogę uruchomić REPL Kotlin w kontekście mojego projektu Maven?Uruchom Kotlin REPL z kontekstu mojego projektu Maven?
To działa, ale jest brzydki:
kotlinc-jvm -cp target/classes/:`ruby -e "puts Dir['target/**/*.jar'].join(':')"`
Próbowałem różne wariacje na następnej (po użyciu Maven skopiować JAR kompilatora jako zależność), ale nic nie działa (Error: Could not find or load main class org.jetbrains.kotlin.runner.Main
):
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1.1</version>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>java</executable>
<arguments>
<argument>-classpath</argument>
<classpath/>
<argument>-classpath</argument>
<argument>${project.basedir}/target/dependency/kotlin-compiler-1.0.0.jar</argument>
<argument>org.jetbrains.kotlin.runner.Main</argument>
</arguments>
</configuration>
</plugin>
Dzięki! To pozwoli Mavenowi znaleźć REPL. Jednak REPL nie może przyjmować danych wejściowych i tylko bloków. Myślę, że musi odrodzić się nowy proces. [This] (http://stackoverflow.com/questions/4668839/maven-and-exec-forking-a-process) może mi pomóc, ale jeszcze tego nie testowałem. Alternatywnie, może jest jakiś sposób, aby to zrobić? Sądzę, że byłby to dość powszechny przypadek użycia dla Kotlin REPL ... –
Obecnie nie jest to możliwe, ale obecnie trwają prace nad nim. Możesz spodziewać się wiadomości w ciągu kilku tygodni. Zaktualizuję odpowiedź. –
Czy kiedykolwiek był jakiś postęp w tym zakresie (ładowanie REPL w kontekście Maven)? Ponownie oceniam Kotlin dla nowego projektu po długiej przerwie i to może być czynnik do rozważenia. Dzięki! –