Java项目打包成.Jar包并设置成Windows定时任务定时执行

时间:2024-03-21 13:46:10

一.eclipse打jar包(使用其他方式打包也可只要打包后的程序能正常运行就行)

1.首先保证程序正常运行

2.本人 使用maven打 .jar 包,要在pom.xml中添加以下内容<build>标签与<dependencies>同级

<build>
        <plugins>
            <plugin>
                <artifactId> maven-assembly-plugin </artifactId>
                <configuration>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

3.打包,右键项目 run as -> maven install,在target文件夹下生成两个jar包,选择文件名长的作为操作文件

4.将 jar 包 存放到固定目录且重命名,我存放于E://ImageCacheClear/clearImage.jar

5.检查Main-Class属性是否存在,没有就手动添加

    手动右键 jar包-》打开方式 -》WinRAR-》META-INF-》MANIFEST.MF(使用记事本打开)

    查看是否有Main-Class ,如果没有的话,在MANIFEST.MF文件尾部添加  Main-Class: 包名.类名

  (Main-Class:后面有英文空格 类名后面不加.class)

     本例:Main-Class: fri.xiao.clearImage.App

    保存关闭该文件后,弹出下面窗口,点击"是"

      Java项目打包成.Jar包并设置成Windows定时任务定时执行

6.用"命令提示符窗口" 运行该jar包

java -Dfile.encoding=UTF-8 -jar  E://ImageCacheClear/clearImage.jar
java -jar  E://ImageCacheClear/clearImage.jar
#程序中有可能报异常,建议程序中所用路径尽量制定绝对路径,且有可能输出日志信息为乱码


可能产生的问题: 运行JAR包 提示没有主清单属性解决办法

原因分析:因为JAR包中的META-INF文件夹下的MANIFEST.MF文件缺少定义jar入口类。就是缺少默认运行的Main类。

解决办法:

        手动加上运行的类(Main-Class属性),

        右键 jar包-》打开方式 -》WinRAR-》META-INF-》MANIFEST.MF(使用记事本打开) 

        Java项目打包成.Jar包并设置成Windows定时任务定时执行

 在MANIFEST.MF文件尾部添加  Main-Class: 包名.类名,最后一行要有回车

(Main-Class:后面有英文空格 类名后面不加.class)

 本例:Main-Class: fri.xiao.clearImage.App

Java项目打包成.Jar包并设置成Windows定时任务定时执行

保存关闭该文件后,弹出下面窗口,点击"是"

Java项目打包成.Jar包并设置成Windows定时任务定时执行

重新运行就OK了 


7.因为windows执行的程序不是导出的jar包,Windows定时任务执行的是.bat文件,创建.bat文件

  新建txt文件,使用记事本打开,复制步骤6中执行jar包的命令,第二行键入 exit,保存。

   exit的意思是执行完程序cmd窗口自动关闭。

Java项目打包成.Jar包并设置成Windows定时任务定时执行

8.将上一步的txt文件后缀名改为(.bat)  imageClear.txt -》imageClear.bat 最好将该文件保存到和jar包同一目录,便于管理

9.如果以上运行成功,接下来就是将jar包的执行设定为Windows定时任务

1.(win10操作系统)右键此电脑-》管理-》系统工具-》任务计划程序-》任务计划程序库-》(右侧)创建基本任务

    (winServer2008)右键此电脑-》管理-》配置-》任务计划程序-》任务计划程序库-》(右侧)创建基本任务

     Java项目打包成.Jar包并设置成Windows定时任务定时执行

2.键入 任务名称,以及该任务的描述,点击下一步

Java项目打包成.Jar包并设置成Windows定时任务定时执行

3.设置该任务什么时候执行,按需要选择 ,我的是每天执行一次,点击下一步

Java项目打包成.Jar包并设置成Windows定时任务定时执行

4.开始执行的时间,以及时间间隔

Java项目打包成.Jar包并设置成Windows定时任务定时执行

5.一共三个选项,两个弃用的,只能选择"启动程序",下一步

Java项目打包成.Jar包并设置成Windows定时任务定时执行

6.将之前创建的bat文件选中,下一步

Java项目打包成.Jar包并设置成Windows定时任务定时执行

7.点击"完成",就可以看到你创建的定时任务了

Java项目打包成.Jar包并设置成Windows定时任务定时执行

三.删除或结束定时任务

1.(win10操作系统)右键此电脑-》管理-》系统工具-》任务计划程序-》任务计划程序库-》中间部分-》要删除的任务-》 右键 删除

(winServer2008)右键此电脑-》管理-》配置-》任务计划程序-》任务计划程序库-》中间部分-》要删除的任务-》 右键 删除

Java项目打包成.Jar包并设置成Windows定时任务定时执行