crxtool-maven-plugin

Chrome extension tools

Лицензия

Лицензия

Категории

Категории

Maven Компиляция и сборка
Группа

Группа

com.github.mike10004
Идентификатор

Идентификатор

crxtool-maven-plugin
Последняя версия

Последняя версия

0.16
Дата

Дата

Тип

Тип

maven-plugin
Описание

Описание

crxtool-maven-plugin
Chrome extension tools
Ссылка на сайт

Ссылка на сайт

http://maven.apache.org

Скачать crxtool-maven-plugin

Как подключить последнюю версию

<plugin>
    <groupId>com.github.mike10004</groupId>
    <artifactId>crxtool-maven-plugin</artifactId>
    <version>0.16</version>
</plugin>

Зависимости

compile (2)

Идентификатор библиотеки Тип Версия
org.apache.maven : maven-plugin-api jar 3.5.2
com.github.mike10004 : crxtool-core jar 0.16

provided (1)

Идентификатор библиотеки Тип Версия
org.apache.maven.plugin-tools : maven-plugin-annotations jar 3.5

test (2)

Идентификатор библиотеки Тип Версия
junit : junit jar 4.12
com.github.mike10004 : crxtool-testing jar 0.16

Модули Проекта

Данный проект не имеет модулей.

Travis build status AppVeyor build status Maven Central

crxtool

Library for packing and unpacking Chrome extension .crx files.

Core Library

Maven Coordinates

<dependency>
    <groupId>com.github.mike10004</groupId>
    <artifactId>crxtool-core</artifactId>
    <version>0.15</version>
</dependency>

Usage

Unpacking

try (InputStream in = new FileInputStream("my_extension.crx") {
    CrxMetadata metadata = CrxParser.getDefault().parseMetadata(in);
    System.out.println("id = " + metadata.getId());
    // handle remainder of stream as a zip archive
    try (ZipInputStream zin = new ZipInputStream(in)) {
        // ...
    }
}

Packing

Path extensionDir = new File("manifest-parent-dir").toPath();
java.security.KeyPairGenerator keyGen = java.security.KeyPairGenerator.getInstance("RSA");
java.security.SecureRandom random = new java.security.SecureRandom();
keyGen.initialize(1024, random);
java.security.KeyPair keyPair = keyGen.generateKeyPair();
try (OutputStream out = new FileOutputStream("new_extension.crx")) {
    CrxPacker.getDefault().packExtension(extensionDir, keyPair, out);
}

Maven Plugin

Maven Coordinates

<plugin>
    <groupId>com.github.mike10004</groupId>
    <artifactId>crxtool-maven-plugin</artifactId>
    <version>0.15</version>
</plugin>

Usage

Place extension source files in src/main/extension.

<build>
    <plugins>
        <plugin>
            <groupId>com.github.mike10004</groupId>
            <artifactId>crxtool-maven-plugin</artifactId>
            <version>0.15</version>
            <executions>
                <execution>
                    <id>pack</id>
                    <goals>
                        <goal>pack-extension</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>build-helper-maven-plugin</artifactId>
            <version>3.0.0</version>
            <executions>
                <execution>
                    <id>attach-artifact</id>
                    <goals>
                        <goal>attach-artifact</goal>
                    </goals>
                    <configuration>
                        <artifacts>
                            <artifact>
                                <file>${project.build.directory}/${project.artifactId}-${project.version}.crx</file>
                                <type>crx</type>
                            </artifact>
                        </artifacts>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

Credits

The extension ID construction is probably from this Stack Overflow answer. The make-page-red example extension file in the test resources is from developer.chrome.com.

Версии библиотеки

Версия
0.16
0.15
0.14
0.12
0.11
0.10
0.9
0.8
0.7
0.6
0.5