我有一個Scala項目,我想將它導出爲jar。從Eclipse導出Scala項目爲jar
* 1。起初,我試圖創建項目的Java類作爲切入點
public class JMain {
public static void main(String[] args) {
System.out.println("Java main calling Scala main");
SMain.main(new String[] {""}); //SMain.main is the actual *main*
,並從Eclipse的時候推出這個工作非常愉快,但是當我出口它作爲罐子它會給我18個例外左右。我現在知道如何複製那麼Eclipse能夠啓動的「環境」,我很確定它依賴於Scala已經在我的系統上這一事實 - 我需要一個自包含的jar,其中包含所有的東西。
* 2。我的第二次嘗試包括嘗試什麼LACH即這裏How to deploy a Scala project from Eclipse?建議 :
public class JMain {
public static void main(String[] args) {
System.out.println("Java Main");
List<String> argList = new ArrayList<String>();
argList.add("fully.qualified.ClassName"); //???
for (String s : args) argList.add(s);
scala.tools.nsc.MainGenericRunner.main(argList.toArray(new String[0]));
這一次,它甚至不會從Eclipse中運行,雖然只給出6個左右開始與著名NoClassDefFoundError的例外。我有一種感覺,我沒有得到fully.qualified.ClassName沒錯。 * 3。如果主要的斯卡拉類被稱爲「Dis.scala」,並位於包「包」不應該這fully.qualified.ClassName是「pack.Dis」?
我使用JRE 1.6和Scala 2.9.2 編輯:我已經包括了所有外部進口的罐子,甚至斯卡拉-library.jar - 一切都是好的,裝在罐子裏
附:我不熟悉Ant或Maven或Sbt。我只是想讓我的Scala項目變得更加神奇 - 如果可能的話,不要進入毛茸茸的東西。
從長遠來看,您可能會發現,爲了建立一個Sbt(或Maven)構建而預先投入適量的努力會更簡單,從這一點開始,生活變得更加容易。 – 2012-07-10 14:52:00