Compartilhar via


Pack200 Classe

Definição

Transforma um arquivo JAR de ou para um fluxo compactado 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
Pack200
Atributos

Comentários

Transforma um arquivo JAR de ou para um fluxo compactado 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 empacotamento é usado por desenvolvedores de aplicativos para implantar ou hospedar arquivos JAR em um site. O mecanismo de descompactação é usado por aplicativos de implantação para transformar o fluxo de bytes de volta ao formato JAR.

Aqui está um exemplo usando packer e unpacker:

{@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 o Guia de Implementação Java para obter mais detalhes e técnicas.

Salvo indicação em contrário, 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 Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Construtores

Pack200(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução.

Propriedades

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

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

(Herdado de Object)
JniPeerMembers

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

PeerReference

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

(Herdado de Object)
ThresholdClass

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

Métodos

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
Dispose()

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

(Herdado de Object)
Dispose(Boolean)

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

(Herdado de Object)
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 nova instância de uma classe que implementa Packer.

NewUnpacker()

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

Notify()

Ativa um único thread que está aguardando no monitor deste 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)
ToArray<T>()

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

(Herdado de Object)
ToString()

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

(Herdado de Object)
UnregisterFromRuntime()

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

(Herdado de Object)
Wait()

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

(Herdado de Object)
Wait(Int64)

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

(Herdado de Object)
Wait(Int64, Int32)

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

(Herdado de Object)

Implantações explícitas de interface

IJavaPeerable.Disposed()

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

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

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

(Herdado de Object)
IJavaPeerable.Finalized()

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

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

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

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

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

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

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

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

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

(Herdado de Object)

Métodos de Extensão

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

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

GetJniTypeName(IJavaPeerable)

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

Aplica-se a