- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中com.sun.tools.javac.file.ZipFileIndex
类的一些代码示例,展示了ZipFileIndex
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZipFileIndex
类的具体详情如下:
包路径:com.sun.tools.javac.file.ZipFileIndex
类名称:ZipFileIndex
[英]This class implements the building of index of a zip archive and access to its context. It also uses a prebuilt index if available. It supports invocations where it will serialize an optimized zip index file to disk. In order to use a secondary index file, set "usezipindex" in the Options object when JavacFileManager is invoked. (You can pass "-XDusezipindex" on the command line.) Location where to look for/generate optimized zip index files can be provided using " -XDcachezipindexdir=". If this flag is not provided, the default location is the value of the "java.io.tmpdir" system property. If "-XDwritezipindexfiles" is specified, there will be new optimized index file created for each archive, used by the compiler for compilation, at the location specified by the "cachezipindexdir" option. If system property nonBatchMode option is specified the compiler will use timestamp checking to reindex the zip files if it is needed. In batch mode the timestamps are not checked and the compiler uses the cached indexes.
This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.
[中]这个类实现了zip存档的索引构建和对其上下文的访问。如果可用,它还使用预建索引。它支持将优化的zip索引文件序列化到磁盘的调用。为了使用辅助索引文件,在调用JavacFileManager时,在Options对象中设置“usezipindex”。(可以在命令行上传递“-XDusezipindex”。)可以使用“-XDcachezipindexdir=”提供查找/生成优化zip索引文件的位置。如果未提供此标志,则默认位置为“java.io.tmpdir”系统属性的值。如果指定了“-XDwritezipindexfiles”,则将在“cachezipindexdir”选项指定的位置为每个存档创建新的优化索引文件,供编译器用于编译。如果指定了system property nonBatchMode选项,编译器将使用时间戳检查来重新索引zip文件(如果需要)。在批处理模式下,不检查时间戳,编译器使用缓存的索引。
这不是任何受支持的API的一部分。如果您编写的代码依赖于此,那么您将自担风险。本代码及其内部接口如有更改或删除,恕不另行通知。
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
/**
* Returns the last modified timestamp of a zip file.
* @return long
*/
public long getZipFileLastModified() throws IOException {
synchronized (this) {
checkIndex();
return zipFileLastModified;
}
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
public void close() throws IOException {
zfIndex.close();
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
synchronized byte[] read(Entry entry) throws IOException {
openFile();
byte[] result = readBytes(entry);
closeFile();
return result;
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
public synchronized void close() {
writeIndex();
closeFile();
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
/**
* Tests if a specific path exists in the zip. This method will return true
* for file entries and directories.
*
* @param path A path within the zip.
* @return True if the path is a file or dir, false otherwise.
*/
public synchronized boolean contains(RelativePath path) {
try {
checkIndex();
return getZipIndexEntry(path) != null;
}
catch (IOException e) {
return false;
}
}
代码示例来源:origin: sc.fiji/javac
private byte[] readBytes(Entry entry) throws IOException {
byte[] header = getHeader(entry);
int csize = entry.compressedSize;
byte[] cbuf = new byte[csize];
zipRandomFile.skipBytes(get2ByteLittleEndian(header, 26) + get2ByteLittleEndian(header, 28));
zipRandomFile.readFully(cbuf, 0, csize);
// is this compressed - offset 8 in the ZipEntry header
if (get2ByteLittleEndian(header, 8) == 0)
return cbuf;
int size = entry.size;
byte[] buf = new byte[size];
if (inflate(cbuf, buf) != size)
throw new ZipException("corrupted zip file");
return buf;
}
代码示例来源:origin: sc.fiji/javac
if (!isUpToDate()) {
closeFile();
isUpToDate = false;
if (readIndex()) {
lastReferenceTimeStamp = System.currentTimeMillis();
return;
openFile();
long totalLength = zipRandomFile.length();
ZipDirectory directory = new ZipDirectory(zipRandomFile, 0L, totalLength, this);
} finally {
if (zipRandomFile != null) {
closeFile();
代码示例来源:origin: konsoletyper/teavm-javac
public synchronized int length(RelativeFile path) throws IOException {
Entry entry = getZipIndexEntry(path);
if (entry == null)
throw new FileNotFoundException();
if (entry.isDir) {
return 0;
}
byte[] header = getHeader(entry);
// entry is not compressed?
if (get2ByteLittleEndian(header, 8) == 0) {
return entry.compressedSize;
} else {
return entry.size;
}
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
private byte[] getHeader(Entry entry) throws IOException {
zipRandomFile.seek(entry.offset);
byte[] header = new byte[30];
zipRandomFile.readFully(header);
if (get4ByteLittleEndian(header, 0) != 0x04034b50)
throw new ZipException("corrupted zip file");
if ((get2ByteLittleEndian(header, 6) & 1) != 0)
throw new ZipException("encrypted zip file"); // offset 6 in the header of the ZipFileEntry
return header;
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
/**
* Check if two file objects are equal.
* Two ZipFileIndexFileObjects are equal if the absolute paths of the underlying
* zip files are equal and if the paths within those zip files are equal.
*/
@Override
public boolean equals(Object other) {
if (this == other)
return true;
if (!(other instanceof ZipFileIndexFileObject))
return false;
ZipFileIndexFileObject o = (ZipFileIndexFileObject) other;
return zfIndex.getAbsoluteFile().equals(o.zfIndex.getAbsoluteFile())
&& name.equals(o.name);
}
代码示例来源:origin: sc.fiji/javac
public static ZipFileIndex getZipFileIndex(File zipFile,
RelativeDirectory symbolFilePrefix,
boolean useCache, String cacheLocation,
boolean writeIndex) throws IOException {
ZipFileIndex zi = null;
lock.lock();
try {
zi = getExistingZipIndex(zipFile);
if (zi == null || (zi != null && zipFile.lastModified() != zi.zipFileLastModified)) {
zi = new ZipFileIndex(zipFile, symbolFilePrefix, writeIndex,
useCache, cacheLocation);
zipFileIndexCache.put(zipFile, zi);
}
}
finally {
lock.unlock();
}
return zi;
}
代码示例来源:origin: sc.fiji/javac
protected void finalize() {
closeFile();
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
public boolean contains(RelativePath name) {
return zfIndex.contains(name);
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
public List<String> getFiles(RelativeDirectory subdirectory) {
return zfIndex.getFiles(subdirectory);
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
public Set<RelativeDirectory> getSubdirectories() {
return zfIndex.getAllDirectories();
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
public synchronized ZipFileIndex getZipFileIndex(File zipFile,
RelativeDirectory symbolFilePrefix,
boolean useCache, String cacheLocation,
boolean writeIndex) throws IOException {
ZipFileIndex zi = getExistingZipIndex(zipFile);
if (zi == null || (zi != null && zipFile.lastModified() != zi.zipFileLastModified)) {
zi = new ZipFileIndex(zipFile, symbolFilePrefix, writeIndex,
useCache, cacheLocation);
map.put(zipFile, zi);
}
return zi;
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
private byte[] readBytes(Entry entry) throws IOException {
byte[] header = getHeader(entry);
int csize = entry.compressedSize;
byte[] cbuf = new byte[csize];
zipRandomFile.skipBytes(get2ByteLittleEndian(header, 26) + get2ByteLittleEndian(header, 28));
zipRandomFile.readFully(cbuf, 0, csize);
// is this compressed - offset 8 in the ZipEntry header
if (get2ByteLittleEndian(header, 8) == 0)
return cbuf;
int size = entry.size;
byte[] buf = new byte[size];
if (inflate(cbuf, buf) != size)
throw new ZipException("corrupted zip file");
return buf;
}
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
if (!isUpToDate()) {
closeFile();
isUpToDate = false;
if (readIndex()) {
lastReferenceTimeStamp = System.currentTimeMillis();
return;
openFile();
long totalLength = zipRandomFile.length();
ZipDirectory directory = new ZipDirectory(zipRandomFile, 0L, totalLength, this);
} finally {
if (zipRandomFile != null) {
closeFile();
代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac
public synchronized int length(RelativeFile path) throws IOException {
Entry entry = getZipIndexEntry(path);
if (entry == null)
throw new FileNotFoundException();
if (entry.isDir) {
return 0;
}
byte[] header = getHeader(entry);
// entry is not compressed?
if (get2ByteLittleEndian(header, 8) == 0) {
return entry.compressedSize;
} else {
return entry.size;
}
}
代码示例来源:origin: sc.fiji/javac
private byte[] getHeader(Entry entry) throws IOException {
zipRandomFile.seek(entry.offset);
byte[] header = new byte[30];
zipRandomFile.readFully(header);
if (get4ByteLittleEndian(header, 0) != 0x04034b50)
throw new ZipException("corrupted zip file");
if ((get2ByteLittleEndian(header, 6) & 1) != 0)
throw new ZipException("encrypted zip file"); // offset 6 in the header of the ZipFileEntry
return header;
}
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: Sample data for IPv6? 除了 wireshark 在其网站上提供的内容之外,是否有可以下
我正在寻找可以集成到现有应用程序中并使用多拖放功能的示例或任何现成的解决方案。我在互联网上找到的大多数解决方案在将多个项目从 ListBox 等控件拖放到另一个 ListBox 时效果不佳。谁能指出我
我是 GATE Embedded 的新手,我尝试了简单的示例并得到了 NoClassDefFoundError。首先我会解释我尝试了什么 在 D:\project\gate-7.0 中下载并提取 Ga
是否有像 Eclipse 中的 SWT 示例那样的多合一 JFace 控件示例?搜索(在 stackoverflow.com 上使用谷歌搜索和搜索)对我没有帮助。 如果它是一个独立的应用程序或 ecl
我找不到任何可以清楚地解释如何通过 .net API(特别是 c#)使用谷歌计算引擎的内容。有没有人可以指点我什么? 附言我知道 API 引用 ( https://developers.google.
最近在做公司的一个项目时,客户需要我们定时获取他们矩阵系统的数据。在与客户进行对接时,提到他们的接口使用的目前不常用的BASIC 认证。天呢,它好不安全,容易被不法人监听,咋还在使用呀。但是没办法呀,
最近在做公司的一个项目时,客户需要我们定时获取他们矩阵系统的数据。在与客户进行对接时,提到他们的接口使用的目前不常用的BASIC 认证。天呢,它好不安全,容易被不法人监听,咋还在使用呀。但是没办法呀,
我正在尝试为我的应用程序设计配置文件格式并选择了 YAML。但是,这(显然)意味着我需要能够定义、解析和验证正确的 YAML 语法! 在配置文件中,必须有一个名为 widgets 的集合/序列。 .这
你能给我一个使用 pysmb 库连接到一些 samba 服务器的例子吗?我读过有类 smb.SMBConnection.SMBConnection(用户名、密码、my_name、remote_name
linux服务器默认通过22端口用ssh协议登录,这种不安全。今天想做限制,即允许部分来源ip连接服务器。 案例目标:通过iptables规则限制对linux服务器的登录。 处理方法:编
我一直在寻找任何 PostProjectAnalysisTask 工作代码示例,但没有看。 This页面指出 HipChat plugin使用这个钩子(Hook),但在我看来它仍然使用遗留的 Po
我发现了 GWT 的 CustomScrollPanel 以及如何自定义滚动条,但我找不到任何示例或如何设置它。是否有任何示例显示正在使用的自定义滚动条? 最佳答案 这是自定义 native 滚动条的
我正在尝试开发一个 Backbone Marionette 应用程序,我需要知道如何以最佳方式执行 CRUD(创建、读取、更新和销毁)操作。我找不到任何解释这一点的资源(仅适用于 Backbone)。
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题?通过 editing this post 添加详细信息并澄清问题. 去年关闭。 Improve this
我需要一个提交多个单独请求的 django 表单,如果没有大量定制,我找不到如何做到这一点的示例。即,假设有一个汽车维修店使用的表格。该表格将列出商店能够进行的所有可能的维修,并且用户将选择他们想要进
我有一个 Multi-Tenancy 应用程序。然而,这个相同的应用程序有 liquibase。我需要在我的所有数据源中运行 liquibase,但是我不能使用这个 Bean。 我的应用程序.yml
我了解有关单元测试的一般思想,并已在系统中发生复杂交互的场景中使用它,但我仍然对所有这些原则结合在一起有疑问。 我们被警告不要测试框架或数据库。好的 UI 设计不适合非人工测试。 MVC 框架不包括一
我正在使用 docjure并且它的 select-columns 函数需要一个列映射。我想获取所有列而无需手动指定。 如何将以下内容生成为惰性无限向量序列 [:A :B :C :D :E ... :A
$condition使用说明和 $param在 findByAttributes在 Yii 在大多数情况下,这就是我使用 findByAttributes 的方式 Person::model()->f
我在 Ubuntu 11.10 上安装了 qtcreator sudo apt-get install qtcreator 安装的版本有:QT Creator 2.2.1、QT 4.7.3 当我启动
我是一名优秀的程序员,十分优秀!