1. 不lib的工程

1) 创建工

建的一个java应用程序,调试时可以直接运行main函数。但这样的程序如何部署呢

创建一个工程:javaProjectNew一个类:

public class MainClass {

public static void main(String[] args){

System.out.println("hello world");

}

}

2) 导出jar

工程右键导出,选择java file

javaWeb_打jar包

一步,选择打包内容时不要选classproject。选择打出的包名及路径

javaWeb_打jar包javaWeb_打jar包

1) 运行jar

cmd进入jar包所在目录。

java –jar 包.jar

可以在包在位置创建一个bat文件,内容如下:

@echo off

cd /d %~dp0

java -jar javaProject.jar

pause

 

1. 带lib的工程

http://www.cnblogs.com/lanxuezaipiao/p/3291641.html

1) 创建工程

创建工程现有的bigdatastorm为例。依赖了好几jar位置为当前工程下的lib目录中。

建一个文件:MANIFEST.MF

内容如下:

Manifest-Version: 1.0

Class-Path:

 lib/antlr-2.7.7.jar lib/aopalliance-1.0.jar lib/carbonite-1.4.0.jar lib/chill-java-0.3.5.jar

 lib/clj-stacktrace-0.2.2.jar lib/clj-time-0.4.1.jar lib/clojure-1.5.1.jar lib/clout-1.0.1.jar

...略

 lib/dom4j-1.6.1.jar lib/ezmorph-1.0.6.jar lib/fastjson-1.2.4.jar lib/gson-2.2.2.jar

 lib/xercesImpl.jar lib/xml-apis.jar lib/xmlunit.jar lib/xstream-1.3.1.jar

 

 

Main-Class: com.glodon.storm.analysis.AnalysisStormTopology

 

文件对格式要求相当高,一定要注意

1Class-Path: Main-Class: 后边都有一个空格,必须加上,否则会打包失败,错误提示为:Invalid header field

2. Class-Path面写依赖的包名,包间需要以空格隔,可以折行,但是行头和行尾都需要有一个空格。最后一行面要空出两行两行都是顶格,即不要加空格什么的)。

3、假设我们的项目打包后为KillCheatFans.jar,那么按照上面的定义,应该在 KillCheatFans.jar的同层目录下建立一个lib文件夹(即lib文件和打包的jar文件

在同一个目录下),并将相关的jar包放在里面。否则将会出现“Exception in thread "main" java.lang.NoClassDefFoundError”的错误;

4Main-Class后面是类的全地址,不要加.java后缀,主文件地址写错将会出现“找不到或无法加载主类”的错误。

5、写完Main-Class后一定要回车(即最后一行是空白行),让光标到下一行,这样你生成的jar包才能找到你的主class去运行,否则将会出现“jar中没有主清单属性”的错误。

2) 导出jar

默认会选中左侧的lib,右侧的所有内容,这此不需要,直接把钩去掉。特别是lib,如果选中的话会lib下所有的依赖包打入jar,会很大。

javaWeb_打jar包

一步、下一步,选择程中自己添加的MANIFESTT.MF文件

javaWeb_打jar包

3) 运行jar

为此需要依赖其他包,且相对路径lib下。因jar包同目录添加一个lib文件夹:

javaWeb_打jar包

所依赖的所有jar包放到lib目录下。

运行jar包和上面一样。cmd当前目录,java –jar bigdatastorm.jar

1:可以定使用的内存大小:至少512m,最多1024m

java -jar -Xms512m -Xmx1024m bigdatastorm.jar

注2:可以在后面添加参数:

java -jar bigdatastorm.jar bigdata admin admin

些参数就可以在main函数中直接使用,如:

 javaWeb_打jar包

 

4) bat

当前目录创建一个bat文件,内容如下:

@echo off

cd /d %~dp0

java -jar bigdatastorm.jar

pause

 

:红色内容即为上面cmd中需要输入的内容。


相关文章:

  • 2022-01-05
  • 2021-06-30
  • 2021-06-30
  • 2021-07-03
  • 2022-01-29
  • 2021-12-25
猜你喜欢
  • 2021-06-14
  • 2021-09-27
  • 2021-04-13
  • 2021-09-24
  • 2021-12-31
  • 2022-12-23
  • 2021-06-20
相关资源
相似解决方案