1. 程式人生 > >替換jar包指定的檔案

替換jar包指定的檔案

替換jar 包下面的class 檔案,很多人會想到直接用winrar 開啟替換,在一般的情況下,

是可行的,但是如果說這個jar 的程式碼經過混淆後,會有大小寫不同,檔名是相同的,在windos下

檔名是不區分大小寫的。如果直接用winrar替換的話,你會發現,替換的並非是你想替換的那個檔案。

現在有2中可以行的方案:

1 在Linux下把jar包解壓,替換,打成jar。這樣比較麻煩,這windos還不能用。

2 可以直接用Java jar 工具來替換。

jar uvf test.jar test.class

這樣會直接把test.class 直接新增到jar包的根目錄。

jar uvf test.jar com/test/test.class 

這樣就可以替換相應目錄的class檔案了。

這裡值得注意的是  test.class 必須放在com/test 檔案下,要和jar的路徑對應起來。不然會說

沒有這個檔案或目錄。jar 包 和 com 資料夾的上級在同一個目錄。

相關推薦

替換jar指定檔案

替換jar 包下面的class 檔案,很多人會想到直接用winrar 開啟替換,在一般的情況下, 是可行的,但是如果說這個jar 的程式碼經過混淆後,會有大小寫不同,檔名是相同的,在windos下 檔名是不區分大小寫的。如果直接用winrar替換的話,你會發現,替換的

怎樣替換jar指定檔案

在做(或修改別人的)專案的時候,可能遇到要修改呼叫的的jar包內的類屬性或方法的問題。在eclipse或是其他的IDE中是無法直接修改的,所以需要一個解壓jar-->修改檔案-->編譯-->打包成jar檔案的過程,下面簡要的記錄下我是如何做的: 1.將

總結替換jar指定檔案的步驟

一: 1定位路徑:cd /bestpayserver/project/paycenter-bank 2列出指定檔案路徑:jar tvf paycenter-bank.jar|grep BocB2

曹工雜談:Linux伺服器上,Spring Boot 原地修改 jar 配置檔案/替換class檔案,免去重複上傳的麻煩

一、前言 相信很多同學有這樣的需求,現在很多公司都有多地的研發中心,經常需要跨地區部署,比如,博主人在成都,但是伺服器是北京的。一般城市間網路都不怎麼好,上傳一個幾十兆的jar包那是真的慢,別說現在微服務架構下,動輒兩位數的fat jar。這裡說的jar,就是spring boot專案打出來的fat jar

jar 檔案的遍歷以及檔案的拷貝

import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream;

linux下使用vim修改jar檔案內容

首先cd到jar包所在目錄,執行命令 vim xxx.jar vim xxx.jar 可以使用vim命令進行當前目錄下的檔案查詢,以及gg等相關命令。以log4j.xml檔案為例: 1 輸入如下查

Java檔案讀取 jar檔案讀取。

最近遇到一些Jar包內外配置檔案讀取的問題。索性自己測試總結一下,與大家分享。 主要是關於ClassLoader.getResource和Class.getResource方法路徑區別的問題。 1. 絕對路徑檔案讀取,最簡單,最直接的方式

專案打jar保留引數名及可執行專案打jar指定入口類和第三方依賴等

1. 專案打jar包保留引數名(jdk8) JDK8之後程式碼編譯就可以保留引數名了,不再顯示為arg0,arg1...,但JDK8編譯預設還是不保留引數名的,需要手動開啟; 那麼應該如何打jar包保留引數名呢? (1) 命令列編譯某個java檔案到class:  

【Java】在伺服器cmd 下 編譯呼叫第三方jar檔案

今天在使用者現場除錯BUG。 由於遠端並且不能模仿 使用者現場的裝置環境 不能將程式碼拷貝到開發環境測試。 就只能在伺服器寫java程式碼 測試。 這裡遇到一個問題,就是怎麼編譯呼叫第三方jar包的j

linux檢視jar檔案命令

jar vtf  fileName.jar 用法: jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...選項包括:    -c  建立新的歸檔檔案    -t  列出

java 獲取 jar 檔案列表

   獲取 jar 包內檔案列表,使用 JarFile。下面是我的測試類: package com.zd.test1; import java.io.File; import java.io.Fil

Java 讀取Jar檔案

當我們需要讀取Jar包內的檔案時,我們就不能使用new File(filePath)來讀取了,因為根本無法指定這個filePath,如果說在開發時,還可以利用this.getClass().getResource()來獲

maven: 給jar指定 定製的 logback.xml

This example shows you how to use Maven to exclude the logback.xml file from the final Jar file. Not

android studio工具類打jar 任意目錄打jar 任意檔案jar

專案中需要給別人提供jar,但是在網上搜的都是把整個moudle打包的,這個太不科學 了,我只要打包幾個類或者某個package下的所有檔案。自己研究了下算是解決了。1進入 project\build\intermediates\classes\release 資料夾2 在r

打包後jar檔案讀取問題

1、jar包中原來的資料夾被打包放到工程中,資料夾會變成包package 2、讀取jar包中的檔案,必須使用ClassLoader.getResource(fileName) 或者 ClassLoader.getResourceAsStream(fileName)去獲取 3

打包jar檔案讀取和第三方jar的問題

本人自己遇到的問題。自己寫的一個專案,想要打包成jar包放在定時器裡去呼叫,遇到了如下問題 1.xml檔案和properties檔案讀取問題 2.第三方jar包讀取不到 解決方案: 1 我是在讀取xml檔案時遇到的問題,xml檔案解析用到了dom4j第三方包中的類。

詳解docker部署SpringBoot及如何替換jar

關於docker的安裝和使用,可以看看之前這兩篇文章。Docker從安裝部署到Hello World和Docker容器的使用和連線。這篇文章主要介紹如何在docker上部署springboot專案。關於如何建立springboot專案可以看看這篇文章SpringBoot入門教程(一)詳解intellij

java spring boot 專案 不重新上傳jar替換檔案

有時候我們重新打包一個maven專案上傳到伺服器上需要好多時間 我們可以只更換我們修改的檔案 命令一 jar -xf jar包 將傳上去的解壓,這時候會出現幾個資料夾,保留BOOT-INF資料夾 進入資料夾 有class資料夾跟lib資料夾 替換檔案的話 用下面的命令 命令二

檢視與修改位元組碼,從而實現替換他人jar中class檔案的目的

一、檢視二進位制位元組碼檔案的方式: 1.通過cmd命令:javap -v ClassA 2.通過jclasslib工具 二、將Android的apk中的dex反編成smail檔案,直接修改smail檔案後再回編成dex; 三、修改二進位制位元組碼檔案的方式: 1.反編

maven-antrun-plugin的簡單使用(複製jar指定目錄,複製檔案到伺服器,連線伺服器執行命令)

引入依賴(因為要實用if for 等等這樣的標籤) <dependency> <groupId>ant-contrib</groupId> <artifactId>ant-contrib</art