罐子清单只占用太多空间.我可以将其折叠或隐藏吗?
如何发布android-library项目的Jar包装?
我发现,classes.jar位于下面build/bundles/release/classes.jar,我想这是正确的Jar包(包含*.class文件).
是否有一些官方的方式,将库作为JAR而不是AAR发布?
编辑
我使用Gradle来发布Maven工件,我想发布JAR和AAR包.所以带有签名的JAR,md5,manifest,......
基于https://chris.banes.me/2013/08/27/pushing-aars-to-maven-central/
apply plugin: 'maven'
apply plugin: 'signing'
configurations {
archives {
extendsFrom configurations.default
}
}
def sonatypeRepositoryUrl
if (isReleaseBuild()) {
println 'RELEASE BUILD'
sonatypeRepositoryUrl = "https://oss.sonatype.org/service/local/staging/deploy/maven2/"
} else {
println 'DEBUG BUILD'
sonatypeRepositoryUrl = "https://oss.sonatype.org/content/repositories/snapshots/"
}
if(!hasProperty('nexusPassword')) {
ext.set('nexusPassword', System.console().readPassword("\n\$ Type in password for Sonatype nexus account " + nexusUsername + ": "))
}
if(!signing.hasProperty('password')) {
ext.set('signing.password', System.console().readPassword("\n\$ Type in GPG key password: "))
}
afterEvaluate { project …Run Code Online (Sandbox Code Playgroud) 在gradle中 - 我如何在lib目录(特别是lib/enttoolkit.jar和lib/mail.jar)中的jar输出jar中嵌入jar?
对于Java开发人员来说,这必须是一个非常基本的问题,但是在给定类名的情况下找到合适的jar文件的最佳方法是什么?
例如,给定" com.ibm.websphere.security.auth.WSSubject ",如何跟踪相应的jar文件?("谷歌"不是我正在寻找的答案!)
在Java文档不给jar文件的任何暗示,明显的jar的名称文件本身不提供线索.
在java世界中必须有一个"搜索本地jar"或某种"自动解析依赖"技巧.理想情况下,我正在寻找"官方"的方式来做到这一点.我碰巧在没有cygwin的Windows机器上.
我有一个不寻常的情况,我需要在可执行jar的清单中添加一个任意的类路径条目(指向一个jar文件).(这适用于Swing桌面应用程序.)
maven-jar-plugin使用maven依赖项为jar清单生成"Class-Path"条目,并且似乎没有任何添加任意条目的方法.
我还看了使用"-classpath"参数将任意类路径条目硬编码到启动应用程序的批处理文件中,但我无法弄清楚如何让Maven将类路径过滤到批处理文件中.
我正在使用Ant来构建一些Java项目.
在某些情况下,我lib/在JAR文件的表单中有一个包含外部依赖项的目录.
在构建期间,我创建了一个捆绑的jar,它包含项目的代码以及依赖项,通过向目录中的zipfileset每个jar添加bundle jar文件a lib/.
问题是,每次我添加一个jar或更改名称时,我都需要记住更新build.xml文件,因为我找不到以zipfilesets自动方式添加这些文件的方法,这些方式将包括特定模式中的所有jar(例如lib/*.jar).
这样做有更好的方法吗?
我已经考虑为此编写自己的Ant任务,或者使用Groovy的ant API以编程方式执行此操作,但是想知道是否有使用"vanilla"ant的方法.
我正在尝试创建一个Java工具,它将扫描Java应用程序的结构并提供一些有意义的信息.为此,我需要能够从项目位置(JAR/WAR或只是一个文件夹)扫描所有.class文件,并使用反射来阅读他们的方法.事实证明这几乎是不可能的.
我可以找到许多基于URLClassloader的解决方案,它允许我从目录/存档加载特定的类,但是没有一个允许我加载类而没有关于类名或包结构的任何信息.
编辑:我想我的说法很差.我的问题不是我无法获得所有的类文件,我可以通过递归等来做到这一点并正确定位它们.我的问题是为每个类文件获取一个Class对象.
我有一些外部jar的运行时依赖项,我想"重新"到一个jar中.这些外部依赖项存储在external_jars目录中,我希望不必全部列出它们(即,如果我的依赖项发生更改,则不需要更改构建脚本).有什么想法吗?
谷歌给了我一个很好的答案,如何做到这一点 - 如果你不介意将每个jar列为依赖:
http://markmail.org/message/zijbwm46maxzzoo5
粗略地说,我想要的是下面的内容,它们将lib目录中的所有jar组合成out.jar(带有一些合理的覆盖规则).
jar -combine -out out.jar -in lib/*.jar
Run Code Online (Sandbox Code Playgroud) 我正在开发一个(Java)项目,其中我有许多附加了源jar文件的jar.
有没有办法让eclipse"文件搜索"搜索包含这些源jar中的一些字符串文字的Java文件(以及txt,xml等),而不仅仅是在项目文件夹中?
或者是否有任何插件可以实现这一目标?
在我的项目中,我使用的是通过Maven提供的JAR文件.但Maven给我的只是这个罐子 - 没有javadocs,也没有来源.按"下载源"无效:Eclipse仍然找不到jar的来源.
这取决于什么?存储库应该自动提供源吗?
可能我需要在POM中写一些东西来指示Maven下载源代码?
我目前的pom如下:
<repositories>
<repository>
<id>xuggle repo</id>
<url>http://xuggle.googlecode.com/svn/trunk/repo/share/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>xuggle</groupId>
<artifactId>xuggle-xuggler</artifactId>
<version>5.3</version>
<type>rar</type>
</dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)
为什么Maven没有对它的任何评论来源下载失败?