Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过在一个类文件中编辑一些硬编码键来重新编译Java程序?_Java_Amazon Web Services_Aws Lambda - Fatal编程技术网

如何通过在一个类文件中编辑一些硬编码键来重新编译Java程序?

如何通过在一个类文件中编辑一些硬编码键来重新编译Java程序?,java,amazon-web-services,aws-lambda,Java,Amazon Web Services,Aws Lambda,我们有一个项目在Amazon AWS Lambda上运行。它将做一些自动化工作。我们需要在该项目中更改硬编码IAM密钥。我们已经从Lambda导出选项下载了该文件。然后,解压项目,然后使用rej_v0.7工具,我修改了硬编码的AWS IAM代码。现在,我已经像以前一样压缩了文件夹,并将其部署到AWS Lambda中。 但现在我发现了一个我没碰过的类的“未发现类”异常。 我们没有这个项目的源代码。我们不知道该项目的结构和依赖性等,以重新编译该项目。请任何人提出一些最好的方法来做到这一点。 提前谢谢

我们有一个项目在Amazon AWS Lambda上运行。它将做一些自动化工作。我们需要在该项目中更改硬编码IAM密钥。我们已经从Lambda导出选项下载了该文件。然后,解压项目,然后使用
rej_v0.7
工具,我修改了硬编码的AWS IAM代码。现在,我已经像以前一样压缩了文件夹,并将其部署到AWS Lambda中。 但现在我发现了一个我没碰过的类的“未发现类”异常。 我们没有这个项目的源代码。我们不知道该项目的结构和依赖性等,以重新编译该项目。请任何人提出一些最好的方法来做到这一点。 提前谢谢

编辑: 这是我在清单文件中找到的
清单版本:1.0
Archiver版本:丛式Archiver
建造人:。。。。。
创建人:ApacheMaven 3.3.3
构建Jdk:1.8.0_31

  • 值得检查控制台上的lambda详细信息,如传入的环境变量、分配给它的角色(如果您没有使用一个,那么它值得使用一个角色而不是IAM密钥)、它部署在哪个子网等,以确保如果您想重新部署它,您可以获得配置
  • lambda所需的所有依赖项都必须位于zip-it-self中,因此这就是您所需要的
  • 如果您的zip文件足够小,您可以获得一个内联编辑器来更新aws控制台本身上的代码
  • 您可以使用aws控制台发布lambda的新版本,该控制台将保护您在某些版本(如x)上的旧代码,并且您可以更改lambda x1版本上的代码。如果您使用的是API网关,则需要API网关部署
  • 您可以一起使用下载的zip创建和部署一个新的lambda,并将代码复制到一个新的lambda上,然后尝试使用aws控制台上的测试工具使其工作。您可以参考您的旧lambda以了解配置和其他信息

  • 是否确实已打包所有内容,并且文件夹结构已保留?您应该复制修改过的jar的原始版本,只替换其中的单个类,然后尝试一下。另一个问题可能是jar是否已签名。我通常做的是反编译jar,更改文件,然后使用javac编译修改后的类,并将类路径设置为原始类har@m4gic@Fran Montero@amittn我只对硬编码密钥进行了更改。一切都像以前一样打包了。这个项目是在ApacheAnt中开发的。现在错误是类未找到异常。有没有办法提供类路径呢?谢谢你的回答。昨天完成这件事很紧急。因此,我使用字节码编辑器更新了.class文件的内容。后来,我在WinRAR中打开了原始项目的zip文件,并替换了那些修改过的类文件。就这样,我已经将zip文件上传到Lambda,一切正常。