Pack200 Classe

Definição

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

[Android.Runtime.Register("java/util/jar/Pack200", DoNotGenerateAcw=true)]
public abstract class Pack200 : Java.Lang.Object
[<Android.Runtime.Register("java/util/jar/Pack200", DoNotGenerateAcw=true)>]
type Pack200 = class
    inherit Object
Herança
Atributos

Comentários

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200. Consulte a Especificação JSR 200 do Formato de Transferência de Rede em http://jcp.org/aboutJava/communityprocess/review/jsr200/index.html

Normalmente, o mecanismo de empacotador é usado pelos desenvolvedores de aplicativos para implantar ou hospedar arquivos JAR em um site. O mecanismo de desempacotador é usado por aplicativos de implantação para transformar o fluxo de bytes de volta para o formato JAR.

Aqui está um exemplo usando empacotador e desempacotador:

{@code
               import java.util.jar.Pack200;
               import java.util.jar.Pack200.*;
               ...
               // Create the Packer object
               Packer packer = Pack200.newPacker();

               // Initialize the state by setting the desired properties
               Map p = packer.properties();
               // take more time choosing codings for better compression
               p.put(Packer.EFFORT, "7");  // default is "5"
               // use largest-possible archive segments (>10% better compression).
               p.put(Packer.SEGMENT_LIMIT, "-1");
               // reorder files for better compression.
               p.put(Packer.KEEP_FILE_ORDER, Packer.FALSE);
               // smear modification times to a single value.
               p.put(Packer.MODIFICATION_TIME, Packer.LATEST);
               // ignore all JAR deflation requests,
               // transmitting a single request to use "store" mode.
               p.put(Packer.DEFLATE_HINT, Packer.FALSE);
               // discard debug attributes
               p.put(Packer.CODE_ATTRIBUTE_PFX+"LineNumberTable", Packer.STRIP);
               // throw an error if an attribute is unrecognized
               p.put(Packer.UNKNOWN_ATTRIBUTE, Packer.ERROR);
               // pass one class file uncompressed:
               p.put(Packer.PASS_FILE_PFX+0, "mutants/Rogue.class");
               try {
                   JarFile jarFile = new JarFile("/tmp/testref.jar");
                   FileOutputStream fos = new FileOutputStream("/tmp/test.pack");
                   // Call the packer
                   packer.pack(jarFile, fos);
                   jarFile.close();
                   fos.close();

                   File f = new File("/tmp/test.pack");
                   FileOutputStream fostream = new FileOutputStream("/tmp/test.jar");
                   JarOutputStream jostream = new JarOutputStream(fostream);
                   Unpacker unpacker = Pack200.newUnpacker();
                   // Call the unpacker
                   unpacker.unpack(f, jostream);
                   // Must explicitly close the output.
                   jostream.close();
               } catch (IOException ioe) {
                   ioe.printStackTrace();
               }
            }

Um arquivo Pack200 compactado com gzip pode ser hospedado em servidores Web HTTP/1.1. Os aplicativos de implantação podem usar "Accept-Encoding=pack200-gzip". Isso indica ao servidor que o aplicativo cliente deseja uma versão do arquivo codificado com Pack200 e compactado com gzip. Consulte Java Guia de Implantação para obter mais detalhes e técnicas.

A menos que indicado de outra forma, passar um null argumento para um construtor ou método nesta classe fará com que um NullPointerException seja lançado.

Adicionado em 1.5.

Documentação Java para java.util.jar.Pack200.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Construtores

Nome Description
Pack200(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo runtime.

Propriedades

Nome Description
Class

Retorna a classe de tempo de execução deste Object.

(Herdado de Object)
Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
JniIdentityHashCode

Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade.

(Herdado de Object)
JniManagedPeerState

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
JniPeerMembers

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

PeerReference

Obtém a referência de objeto JNI para este par Java.

(Herdado de Object)
ThresholdClass

Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

Métodos

Nome Description
Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
Dispose()

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
Dispose(Boolean)

Libera os recursos mantidos por esse par Java.

(Herdado de Object)
DisposeUnlessReferenced()

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
Equals(Object)

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
Equals(Object)

Indica se algum outro objeto é "igual a" este.

(Herdado de Object)
GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
JavaFinalize()

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
NewPacker()

Obtenha uma nova instância de uma classe que implementa o Packer.

NewUnpacker()

Obtenha uma nova instância de uma classe que implementa o Unpacker.

Notify()

Ativa um único thread que está aguardando no monitor desse objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle

(Herdado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
ToArray<T>()

Cria uma matriz gerenciada com base nesse wrapper de matriz Java.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

Cancela o registro desse par Java do runtime de interoperabilidade.

(Herdado de Object)
Wait()

Faz com que o thread atual aguarde até que seja despertado, normalmente sendo <notificado></em> ou <em>interrompido</em>.

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido.

(Herdado de Object)

Implantações explícitas de interface

Nome Description
IJavaPeerable.Disposed()

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
IJavaPeerable.Finalized()

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

(Herdado de JavaObject)

Métodos de Extensão

Nome Description
GetJniTypeName(IJavaPeerable)

Obtém o nome JNI do tipo da instância self.

JavaAs<TResult>(IJavaPeerable)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada pelo tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

Transforma um arquivo JAR de ou para um fluxo empacotado no formato Pack200.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Tente coagir a digitar selfTResult, verificando se a coerção é válida no lado Java.

Aplica-se a