标签: jar

如何使用Eclipse中包含的外部库创建jar?

我完成了连接数据库(MySQL)的项目.现在我想将项目导出为jar.但我不知道如何包含其外部依赖项?有没有办法在Eclipse中执行它,或者我应该使用任何脚本吗?

java eclipse jar

86
推荐指数
3
解决办法
20万
查看次数

为什么它无法从JAR文件加载主类清单属性?

我以这种方式创建了一个JAR文件jar cf jar-file input-files.现在,我正试图运行它.运行它不起作用(找不到jre命令):

jre -cp app.jar MainClass
Run Code Online (Sandbox Code Playgroud)

这也不起作用:

java -jar main.jar
Run Code Online (Sandbox Code Playgroud)

(无法从main.jar加载Main-Class清单属性).

我也发现了这一点

运行打包为JAR文件的应用程序(版本1.2 - 需要Main-Class清单标头)

什么是"Main-Class清单标题"?我该如何创建它以及在哪里放置它?

java jar header manifest

85
推荐指数
4
解决办法
33万
查看次数

Android Studio-程序类型已存在:com.google.android.gms.internal.measurement.zzwp

昨天,我的应用程序工作正常.

今天,我不知道为什么,在重新打开Android Studio后,应用程序不再编译了.

显示的错误是

Program type already present: com.google.android.gms.internal.measurement.zzwp
Message{kind=ERROR, text=Program type already present: com.google.android.gms.internal.measurement.zzwp, sources=[Unknown source file], tool name=Optional.of(D8)}
Run Code Online (Sandbox Code Playgroud)

我真的不知道发生了什么,我搜索了一切,没有任何效果.如果有人可以帮助我,我真的很感激.我更改了所有依赖项和库以尝试解决它,但没有任何效果.

这是build.gradle项目

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'
        classpath 'com.google.gms:google-services:3.2.1'


        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)

这是我的build.gradle模块:app

apply plugin: 'com.android.application'

android …
Run Code Online (Sandbox Code Playgroud)

android jar firebase android-studio

84
推荐指数
6
解决办法
5万
查看次数

Java Eclipse:作为JAR导出和作为Runnable JAR导出之间的区别

导出为JAR文件和导出为Runnable JAR文件之间的eclipse有什么区别?他们都不是可以运行的吗?每个的优点/缺点是什么?

java eclipse jar

83
推荐指数
3
解决办法
5万
查看次数

如何编写可在运行时自行更新的Java应用程序?

我想实现一个java应用程序(服务器应用程序),它可以从给定的URL下载新版本(.jar文件),然后在运行时更新自己.

这样做的最佳方式是什么?是否可能?

我猜应用程序可以下载一个新的.jar文件并启动它.但是我应该如何进行切换,例如知道新应用程序何时启动然后退出.或者有更好的方法吗?

java jar auto-update server-application

82
推荐指数
6
解决办法
6万
查看次数

弹簧内部看不到jar中的文件

所有

我在里面创建了一个包含以下MANIFEST.MF的jar文件:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.3
Created-By: 1.6.0_25-b06 (Sun Microsystems Inc.)
Main-Class: my.Main
Class-Path: . lib/spring-core-3.2.0.M2.jar lib/spring-beans-3.2.0.M2.jar
Run Code Online (Sandbox Code Playgroud)

在它的根目录中有一个名为my.config的文件,它在我的spring-context.xml中引用,如下所示:

<bean id="..." class="...">
    <property name="resource" value="classpath:my.config" />
</bean>
Run Code Online (Sandbox Code Playgroud)

如果我运行jar,除了加载特定文件外,一切看起来都很好:

Caused by: java.io.FileNotFoundException: class path resource [my.config] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/D:/work/my.jar!/my.config
        at org.springframework.util.ResourceUtils.getFile(ResourceUtils.java:205)
    at org.springframework.core.io.AbstractFileResolvingResource.getFile(AbstractFileResolvingResource.java:52)
    at eu.stepman.server.configuration.BeanConfigurationFactoryBean.getObject(BeanConfigurationFactoryBean.java:32)
    at eu.stepman.server.configuration.BeanConfigurationFactoryBean.getObject(BeanConfigurationFactoryBean.java:1)
    at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:142)
    ... 22 more
Run Code Online (Sandbox Code Playgroud)
  • 类从jar内部加载
  • spring和其他依赖项从分隔的jar中加载
  • 加载了spring上下文(新的ClassPathXmlApplicationContext("spring-context/applicationContext.xml"))
  • my.properties加载到PropertyPlaceholderConfigurer("classpath:my.properties")
  • 如果我将.config文件放在文件系统之外,并将资源url更改为'file:',一切似乎都很好......

有小费吗?

spring jar classpath

82
推荐指数
4
解决办法
7万
查看次数

Eclipse如何将包含javadocs/source的jar与其二进制文件链接起来?

当我将鼠标悬停在一个类上时,我想在eclipse中显示包含在jar文件中的javadoc注释.

例如,下载JODA-2.0后,获得三个罐子:

在eclipse中,[右键单击项目 - >属性 - > Java构建路径 - >库 - > ADD JAR ...]包含项目中的二进制文件(可以引用这些类),用于joda-time-2.0.jar.

但是如何链接其他两个jar文件中包含的sources/javadoc注释,以便当我将鼠标悬停在这些类上时,我会看到javadocs?

将其他两个jar(joda-time-2.0-javadoc.jar和joda-time-2.0-sources.jar)添加到构建路径不会链接javadoc或源.

java eclipse javadoc jar

80
推荐指数
4
解决办法
6万
查看次数

修改jar中的文件

我想修改jar里面的文件.是否有可能在我的应用程序中不提取和重新震动的情况下执行此操作?

我想修改的文件是配置文件,主要是基于xml的.

我不感兴趣的原因是应用程序用launch4j包装,如果我解开它我不能再次创建.exe文件.

java jar

79
推荐指数
6
解决办法
10万
查看次数

如何使用Bash从JAR读取MANIFEST.MF文件

我需要使用bash从"some.jar"读取MANIFEST.MF maven清单文件

bash jar manifest.mf

79
推荐指数
2
解决办法
4万
查看次数

使用其他classpath选项调用"java -jar MyFile.jar"

我创建了一个包含所有编译内容的jar文件.另外,我的ant构建脚本将所需的lib复制到子文件夹"libs"中.结构如下所示:

MyProgram.jar
libs/
Run Code Online (Sandbox Code Playgroud)

因此,当我尝试运行我的程序时,我收到以下错误:

java -cp ".:/home/user/java/MyProgram/jar/libs" -jar MyProgram.jar
java.lang.ClassNotFoundException: org.postgresql.Driver
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:186)
    at database.PostgresQL.getConnection(PostgresQL.java:38)
    at recommender.dao.Creative2IdxDAO.createCreatives2Idx(Creative2IdxDAO.java:19)
    at main.Main.calculateCorrelationMatrix(Main.java:51)
    at main.Main.main(Main.java:28)
java.lang.NullPointerException
    at recommender.dao.Creative2IdxDAO.createCreatives2Idx(Creative2IdxDAO.java:25)
    at main.Main.calculateCorrelationMatrix(Main.java:51)
    at main.Main.main(Main.java:28)
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

java jar classpath

78
推荐指数
2
解决办法
8万
查看次数