10

假设我在 Eclipse 中编写 Java 代码,然后将其保存为可运行的 .jar 文件。该代码是 100% 自己编写的,因此没有从其他来源导入。

.jar 文件中的任何内容(文件头、..)是否包含有关我的 PC 或我的 Eclipse 版本的私人数据?

4

3 回答 3

13

是的,可能有一个自动生成的清单文件(jar:META-INF/MANIFEST.MF)

这是插件的默认输出

Manifest-Version: 1.0
Built-By: borisov andrey
Build-Jdk: 1.7.0_05
Created-By: Apache Maven
Archiver-Version: Plexus Archiver

如您所见,至少将用户名添加到清单文件中

更新:如果您使用的是 maven,您可能需要配置 maven jar 插件

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-jar-plugin</artifactId>
      <version>${maven-jar-plugin-version}</version>
      <inherited>true</inherited>
      <executions>
        <execution>
          <goals>
            <goal>test-jar</goal>
          </goals>
        </execution>
      </executions>
      <configuration>
        <archive>
          <manifestEntries>
            <Created-By>${java.version} (${java.vendor})</Created-By>
            <Built-By>ME</Built-By>
            <Implementation-Title>${project.name}</Implementation-Title>
            <Implementation-URL>SOME URL if you want</Implementation-URL>
            <Implementation-Version>${project.version}</Implementation-Version>
            <Implementation-Vendor>your company</Implementation-Vendor>
            <Implementation-Vendor-Id>your vendore id</Implementation-Vendor-Id>
          </manifestEntries>
        </archive>
      </configuration>
    </plugin>
于 2012-07-26T12:18:45.943 回答
0

如果在创建可运行的 jar 时将其中任何一个设置为元数据,我会感到惊讶。

于 2012-07-26T12:19:40.593 回答
0

您的可运行 jar 将只有resources, thedependent librariesmanifest.xml文件......

于 2012-07-26T12:22:56.183 回答