繁体   English   中英

Ubuntu 14.04,无法将类打包到“ jar”文件中

[英]Ubuntu 14.04,unable to package classes into 'jar' file

我正在从“ HeadFirst Java”中学习Java我的当前设置是Ubuntu 14.04

已安装Oracle JDK 1.8并将其设置为defaut,还将Oracle Java设置为默认值

我有很多工具,例如AndroidStudio和Eclipse,它们可以完美运行,并且不想更改它们,只需改用Open JDK

我的问题是

我正在进行有关Java打包和部署的练习

目录结构:MYProject:->类,源

来源:-> MyBall.Java类:MyPanel.class,MyBall.class等,清单文本(包含Min-Class:MyBall)

使用当前工作目录为“ MyProject”,我想将源文件夹制作为JAR

该书说:

jar -cvmf manifest.txt app1 .jar *.class

应该做到的

但是我得到的输出是

The program 'jar' can be found in the following packages:

 * default-jdk
 * fastjar
 * gcj-4.8-jdk
 * openjdk-7-jdk
 * gcj-4.6-jdk
 * openjdk-6-jdk

这些是版本:

java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)

javac 1.8.0_11

我发现这是相关的https://stackoverflow.com/a/18166639/3725998但不知道如何更改变量等,不是Linux专家,所以请指导我!

您需要做的是告诉操作系统jar程序所在的位置。 在您的主目录中,您很可能会有一个名为.bashrc的文件。 转到文件末尾并添加以下内容:

export JAVA_HOME=<path to your JDK install e.g. /opt/jdk>
export PATH=$JAVA_HOME/bin:$PATH

这将设置您的JAVA_HOME环境变量-通常由基于Java的应用程序(例如Tomcat)使用。 然后,它将该目录添加到您的PATH变量中。 操作系统将PATH理解为可执行文件的父目录的列表。

更改文件后,在命令提示符处键入以下内容以重新加载Shell配置文件:

. .bashrc

在Ubuntu 14.04中,编辑/ etc / environment以添加JAVA_HOME

sudo gedit /etc/environment

添加行

JAVA_HOME="/usr/lib/jvm/jdk-[version]"

重新载入档案

source /etc/environment

首先, app1.jar之间不应有空格。 因此,如果Java安装正确,就可以解决问题。

jar -cvmf manifest.txt app1.jar *.class

但是,我不认为这是导致您出错的原因。

您可以尝试将其更新到最新版本的Oracle Java8。即使您对Linux没有太多的经验,我也很容易遵循本指南。

http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM