簡體   English   中英

使用ANT構建Eclipse項目-找不到主類

[英]Building eclipse project with ANT - can't find main class

用ant構建eclipse項目-找不到主類

我正在嘗試使用ANT將我的eclipse項目構建到.jar中。

我的目錄結構是:

/

| --- src / DynamDNS / .java文件和build.xml

| ---來自eclipse的bin / DynamDNS / .class文件

| --- lib / .jars包含在類路徑中

這是我的build.xml:

<?xml version="1.0" ?>
<project name="TestMain" default="CreateJar">
  <target name="CreateJar" description="Create Jar file">
    <jar jarfile="DynamDNS.jar" basedir="." includes="**/.class">
        <manifest>
            <attribute name="Main-Class" value="DynamDNS.Connector" />
        </manifest>
    </jar>  
  </target>
</project>

東西會正確構建,並生成一個jar。 但是,當我使用以下命令運行jar時:java -jar DynamDNS.jar

我收到錯誤:錯誤:無法找到或加載主類DynamDNS.Connector

我絕對正確拼寫了我的班級名。

而且,這些類似乎在jar中:

jar tvf DynamDNS.jar 
     0 Tue Apr 21 17:11:26 IST 2015 META-INF/
   135 Tue Apr 21 17:11:24 IST 2015 META-INF/MANIFEST.MF
  5947 Mon Apr 20 21:07:58 IST 2015 Connector.class
   979 Mon Apr 20 20:40:44 IST 2015 IPV4.class
   370 Mon Apr 20 20:40:44 IST 2015 InvalidIPV4Exception.class

包名稱是DynamDNS

有任何想法嗎?

如果您的主類是DynamDNS.Connector,則意味着Connector類在程序包DynamDNS中,因此應位於jar內的DynamDNS文件夾中,而您的外觀應該位於jar的頂層。

我認為問題出在您的ant文件中的jar任務。 刪除include並將您的bin文件夾用作basedir:

<jar jarfile="DynamDNS.jar" basedir="bin">
    <manifest>
        <attribute name="Main-Class" value="DynamDNS.Connector" />
    </manifest>
</jar>  

(有關示例,請參見https://ant.apache.org/manual/Tasks/jar.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM