eclipse打成jar包在linux下运行

先tm说一下,就这个破问题我用了一上午的时间解决的,网上文章稂莠不齐,真的,最烦的就是这种问题了。

借别人文章记录一下,最重要的一句话:(2)假设我们的项目打包后为test.jar,那么按照上面的定义,应该在test.jar的同层目录下建立一个lib文件夹,并将相关的jar包放在里面。

1、MANIFEST.MF

在工程下新建一个MANIFEST.MF的文件,项目结构如下。

M.java

package cn.hwd.main;
 
import java.io.IOException;
 
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.SolrDocument;
import org.apache.solr.common.SolrDocumentList;
 
public class M {
    
    public static void main(String[] args) throws IOException, SolrServerException {
        HttpSolrClient solrClient;
        String url = "http://localhost:8983/solr/user";
        solrClient = new HttpSolrClient(url);
        SolrQuery query = new SolrQuery();
        query.setQuery("*:*");
        QueryResponse response = solrClient.query(query);
        SolrDocumentList results = response.getResults();
        System.out.println(results.getNumFound());  
        for(SolrDocument doc:results) {
            System.out.println(doc); 
        }
        solrClient.close();
    }
 
}
MANIFEST.MF

Manifest-Version: 1.0
Class-Path: lib/commons-io-2.4.jar lib/httpclient-4.4.1.jar lib/httpcore-4.4.1.jar lib/httpmime-4.4.1.jar lib/jcl-over-slf4j-1.7.7.jar lib/noggit-0.6.jar lib/slf4j-api-1.7.7.jar lib/stax2-api-3.1.4.jar lib/woodstox-core-asl-4.4.1.jar lib/zookeeper-3.4.6.jar lib/solr-solrj-5.5.2.jar
Main-Class: cn.hwd.main.M
第一行是MAINIFEST的版本,第二行Class-Path就指定了第三方jar包的位置,第三行指定我们要执行的包含main方法的java文件。
注意:

(1)Class-Path和Main-Class后边都有一个空格。

(2)假设我们的项目打包后为test.jar,那么按照上面的定义,应该在test.jar的同层目录下建立一个lib文件夹,并将相关的jar包放在里面。

(3)Main-Class后面是类的全地址。

(4)写完Main-Class后一定要回车(即最后一行是空白行)。

2、Export

3、运行


--------------------- 
作者:Borny鼎鼎 
来源:CSDN 
原文:https://blog.csdn.net/vinegar93/article/details/78467591 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/qq_30331643/article/details/86484226