使用JarJar重新打包工具

2023-11-22

我已将 Web 应用程序部署到 Google 应用程序引擎,并且我的 Web 服务使用 jersey 1.14 框架。当我尝试使用或调用 GAE 上的 Web 服务时,我收到 java.lang.InknownClassChangeError: Implementing class。我四处搜索,发现 jersey 1.14 依赖于 asm 3.1,而 google app engine 使用 asm 4.0,并意识到我必须使用 JarJar 打包依赖项来解决此问题,但我不知道如何执行此操作与加加。我发现该教程非常神秘,并且面向经验丰富的程序员。因此,有人可以发布面向初学者的教程或引导我完成解决此问题的步骤。


嗯,这是一个很晚的答案,但如果有人路过可能会有所帮助。我将举一个例子并解释这一点。 jarjar可用于重新打包java库。它可用于更改命名空间,例如 org.apache.common.codec 需要更改为 some_random_name.org.apache.common.codec。从以下位置下载 jarjarjarjar下载站点稍后将要更改的 jar 文件 (myinjar.jar) 和下载的 jarjar 粘贴到一个文件夹中并运行此命令java -jar jarjar-1.4.jar process myrules.txt myinjar.jar myoutjar.jar在 myrules.txt 添加这些行

rule org.apache.commons.codec.** some_random_name.org.apache.commons.codec.@1

输出 myoutjar.jar 将保存到同一文件夹中,您可以在项目中使用它而不会发生任何冲突

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用JarJar重新打包工具 的相关文章

  • 在内存中使用 byte[] 创建 zip 文件。 Zip 文件总是损坏

    我创建的 zip 文件有问题 我正在使用 Java 7 我尝试从字节数组创建一个 zip 文件 其中包含两个或多个 Excel 文件 应用程序始终完成 没有任何异常 所以 我以为一切都好 当我尝试打开 zip 文件后 Windows 7 出
  • 为 java 游戏创建交互式 GUI

    大家好 我正在创建一个类似于 java 中的 farmville 的游戏 我只是想知道如何实现用户通常单击以与游戏客户端交互的交互式对象 按钮 我不想使用 swing 库 通用 Windows 看起来像对象 我想为我的按钮导入自定义图像 并
  • 使用 OpenID 保护应用程序引擎中的 remote_api

    我之前问过一个question https stackoverflow com questions 2981226 app engine remote api with openid关于将应用程序引擎的remote api与openID一起
  • 如何在java中将一个数组列表替换为另一个不同大小的数组列表

    我有两个大小不同的数组列表 如何从此替换 ArrayList
  • HSQL - 识别打开连接的数量

    我正在使用嵌入式 HSQL 数据库服务器 有什么方法可以识别活动打开连接的数量吗 Yes SELECT COUNT FROM INFORMATION SCHEMA SYSTEM SESSIONS
  • 如何更改javaFX中按钮的图像?

    我正在使用javaFX 我制作了一个按钮并为此设置了图像 代码是 Image playI new Image file c Users Farhad Desktop icons play2 jpg ImageView iv1 new Ima
  • 在接口中使用默认方法是否违反接口隔离原则?

    我正在学习 SOLID 原则 ISP 指出 客户端不应被迫依赖于他们所使用的接口 不使用 在接口中使用默认方法是否违反了这个原则 我见过类似的问题 但我在这里发布了一个示例 以便更清楚地了解我的示例是否违反了 ISP 假设我有这个例子 pu
  • 从最终实体获取根证书和中间证书

    作为密码学的菜鸟 我每天都会偶然发现一些简单的事情 今天只是那些日子之一 我想用 bouncy castle 库验证 java 中的 smime 消息 我想我几乎已经弄清楚了 但此时的问题是 PKIXparameters 对象的构建 假设我
  • Google App Engine:修改云运行环境

    我正在尝试部署一个使用自定义 Node js 服务器的 Next js 应用程序 我想将自定义构建变量注入应用程序 next config js const NODE ENV process env NODE ENV const envTy
  • 帮助将图像从 Servlet 获取到 JSP 页面 [重复]

    这个问题在这里已经有答案了 我目前必须生成一个显示字符串文本的图像 我需要在 Servlet 上制作此图像 然后以某种方式将图像传递到 JSP 页面 以便它可以显示它 我试图避免保存图像 而是以某种方式将图像流式传输到 JSP 自从我开始寻
  • 如何在用户输入数据后重新运行java代码

    嘿 我有一个基本的java 应用程序 显示人们是成年人还是青少年等 我从java开始 在用户输入年龄和字符串后我找不到如何制作它它们被归类为 我希望它重新运行整个过程 以便其他人可以尝试 的节目 我一直在考虑做一个循环 但这对我来说没有用
  • 如何对不同的参数类型使用相同的java方法?

    我的问题 我有 2 个已定义的记录 创建对象请求 更新对象请求 必须通过实用方法进行验证 由于这两个对象具有相同的字段 因此可以对这两种类型应用相同的验证方法 现在我只是使用两种方法进行重载 但它很冗长 public record Crea
  • Google Cloud Stackdriver 调试代理:无法在 v8 中设置断点

    我正在尝试使用以下命令在节点中设置 Stackdriver 调试器 google cloud debug agentnpm 包 设置快照断点时出现以下错误 Unable to set breakpoint in v8 该版本启用了调试代理
  • 获取文件的总大小(以字节为单位)[重复]

    这个问题在这里已经有答案了 可能的重复 java 高效获取文件大小 https stackoverflow com questions 116574 java get file size efficiently 我有一个名为 filenam
  • Android:无法使用 DbHelper 和 Contract 类将数据插入 SQLite

    public class Main2Activity extends AppCompatActivity private EditText editText1 editText2 editText3 editText4 private Bu
  • 在 Google App Engine 中,如何避免创建具有相同属性的重复实体?

    我正在尝试添加一个事务 以避免创建具有相同属性的两个实体 在我的应用程序中 每次看到新的 Google 用户登录时 我都会创建一个新的播放器 当新的 Google 用户在几毫秒内进行多个 json 调用时 我当前的实现偶尔会创建重复的播放器
  • 我如何在java中读取二进制数据文件

    因此 我正在为学校做一个项目 我需要读取二进制数据文件并使用它来生成角色的统计数据 例如力量和智慧 它的设置是让前 8 位组成一个统计数据 我想知道执行此操作的实际语法是什么 是不是就像读文本文件一样 这样 File file new Fi
  • 包 javax.el 不存在

    我正在使用 jre6 eclipse 并导入 javax el 错误 包 javax el 不存在 javac 导入 javax el 过来 这不应该是java的一部分吗 谁能告诉我为什么会这样 谢谢 米 EL 统一表达语言 是 Java
  • 双枢轴快速排序和快速排序有什么区别?

    我以前从未见过双枢轴快速排序 是快速排序的升级版吗 双枢轴快速排序和快速排序有什么区别 我在 Java 文档中找到了这个 排序算法是双枢轴快速排序 作者 弗拉基米尔 雅罗斯拉夫斯基 乔恩 本特利和约书亚 布洛赫 这个算法 在许多数据集上提供
  • 如何防止在Spring Boot单元测试中执行import.sql

    我的类路径中有一个 import sql 文件 其中包含一些 INSERT 语句 当使用 profile devel 运行我的应用程序时 它的数据被加载到 postgres 数据库中 到目前为止一切正常 当使用测试配置文件执行测试时 imp

随机推荐

  • ARKit 1.5 如何获取垂直平面的旋转

    我正在尝试垂直平面 并尝试将节点放置在墙上 并根据该垂直平面进行正确的旋转 这是被点击的垂直平面的 ARHitTestResult let hitLocation sceneView hitTest touchPoint types exi
  • 在没有互联网连接的计算机上使用 Scala

    我是 Scala 新手 如果问题绝对显而易见 我很抱歉 我的计算机上安装了 Eclipse Photon 想要编辑 Scala 代码并生成可运行的 jar 棘手的部分是我的计算机 Centos7 无法访问互联网 我记住两个潜在的问题 手动下
  • 如何在具有角度嵌套数据组的材料表中显示拆分标题

    当数据作为对象的嵌套数组出现时 我在材料表中显示数据时遇到问题 我想显示当前显示在 stackblitz 中的表格 如果我用我的更改现有数据newData变量它将开始破坏整个表 谁能指导我如何通过材料表中的一组嵌套数据实现拆分标题功能 我想
  • iPad 上具有自定义尺寸的 SwiftUI Sheet() 模式

    如何使用 SwiftUI 控制 iPad 上模态表的首选演示大小 我很惊讶在谷歌上找到这个问题的答案是多么困难 另外 了解模式是否通过向下拖动 取消 或实际执行自定义积极操作来关闭的最佳方法是什么 以下是我在 iPad 上使用 SwiftU
  • 找出两个缺失的数字

    我们有一台内存为 O 1 的机器 我们想要通过n第一遍中的数字 一个接一个 然后我们排除这两个数字 我们将通过n 2号码到机器 编写一个算法来查找缺失的数字 可以使用 O 1 内存来完成 您只需要几个整数来跟踪一些运行总和 整数不需要 lo
  • Autofac 和 ASP .Net MVC 4 Web API

    我在用Autofac用于我的 ASP Net MVC 4 项目中的 IoC Autofac 在初始化存储库并将其传递到API控制器 我确信我的配置中缺少某些内容 这是我导航到时遇到的错误 https localhost 44305 api
  • 在 Android 上强制执行 Expo 上的 LTR

    我正在使用 React Native 和 Expo 创建一个应用程序 但找不到强制 LTR 从左到右 方向的解决方案 我的一些用户的手机支持 RTL 语言 但我只有英语和挪威语 因此以英语显示 RTL 文本没有意义 我也使用 i18next
  • DbContext配置?

    数据库上下文 public class HaberPortalDB DbContext public DbSet
  • 有没有办法在 Visual Studio 2010 中突出显示当前活动的代码块?

    在 Visual Studio 2010 中 如果将鼠标悬停在小 减号上 它将突出显示该代码块 我的问题是 有没有办法让您在其中编码时始终突出显示该块 这样 当我在方法和类之间跳转时 我当前正在处理的任何块都会突出显示 以帮助我的眼睛快速聚
  • Angular Access ng-template 的内部组件

    假设我们有一个名为TopComponent使用这样的模板
  • 在 .CSS 文件中创建一个变量以在该 .CSS 文件中使用[重复]

    这个问题在这里已经有答案了 可能的重复 避免 CSS 中重复的常量 我们有一些在 CSS 表中重复使用的 主题颜色 有没有办法设置一个变量然后重用它 E g css OurColor Blue H1 color OurColor 不要求选择
  • 相当于 Python 的列表排序和 key / Schwartzian 变换

    在 Python 中 给定一个列表 我可以按关键函数对其进行排序 例如 gt gt gt def get value k print heavy computation for k return a 100 b 30 c 50 d 0 k
  • 手动将 JComponent 放置在 JPanel 内

    我想以编程方式将 JLabel 移动到 JPanel 内的特定位置 我努力了setLocation int x int y 但它不起作用 我试图不使用任何布局管理器 这是一个关于如何在不使用布局管理器的情况下布局组件的精彩教程 http j
  • UITextView 中的文本垂直居中

    我想将文本居中垂直里面一个大UITextView填满整个屏幕 因此 当文本很少时 说几个单词 它会按高度居中 这不是一个关于文本居中 可以在IB中找到的属性 的问题 而是关于放置文本的问题垂直就在中间UITextView if文字很短 所以
  • 以编程方式将 svg 转换为图像

    我正在尝试将 svg 转换为图像 我一直在研究几种工具 但仍然无法实现这一点 1 SVG渲染引擎但我遇到了麻烦 因为它没有文档 这是我的代码 using FileStream fileStream File OpenRead C sampl
  • 使用 Python 删除或删除 CSV 文件中的最后一列

    我有一个包含 5 列的 CSV 文件 使用Python 如何删除最后一列 示例中的header5 我是否缺少一种简单的方法 或者我是否必须循环遍历 CSV 中的所有行并从最后一列中删除每个值 这仍然可能会给我留下不需要的前置逗号 我在 CS
  • 使用 SQLAlchemy 和多处理挂入 Python 脚本

    考虑以下 Python 脚本 它使用 SQLAlchemy 和 Python 多处理模块 这是 Debian squeeze 上的 Python 2 6 6 8 b1 默认 和 SQLAlchemy 0 6 3 3 默认 这是一些实际代码的
  • ListView 内的 Horizo​​ntalScrollView:较小的垂直滚动停止水平滚动

    在我的示例活动中 我有 一个ListView包含 包含多个Horizo ntalScrollView 一组TextView 但水平滚动体验相当糟糕 当我启动水平滚动 或快速滑动 时 我必须非常小心才能使其正常工作 一旦水平滚动包含 小的 垂
  • 使用 git filter-branch 删除除文件列表之外的所有内容的历史记录

    我正在尝试在两个 git 存储库之间移动一些文件repo1 and repo2 我有一个要移动的文件的简短列表 保留历史记录 三个要移动的文件repo1 libraryname file1 libraryname file2 tests l
  • 使用JarJar重新打包工具

    我已将 Web 应用程序部署到 Google 应用程序引擎 并且我的 Web 服务使用 jersey 1 14 框架 当我尝试使用或调用 GAE 上的 Web 服务时 我收到 java lang InknownClassChangeErro