我有一个 java 项目,我想将其转换为 Typescript(大约 150 个文件)。
根据 http://www.jsweet.org/getting-started/
...我查看了 jsweet Github 项目。
...我运行了mvn generated-src
...我加载了 index.html,它给了我“它有效!”
现在呢?目前还不清楚接下来会发生什么。
理想情况下,我会假设有一些可运行的文件,例如。 converter.java,您可以在其中指定输入和输出目录。我看不到任何地方对此进行了解释。
最佳答案
我认为这个问题应该是“How to transpile a Java project to TypeScript with JSweet”。
免责声明:JSweet 的主要目的不是将现有的 Java 程序转换为 TypeScript。然而,由于 JSweet 生成中间 TypeScript 代码,它可以用作将 Java 程序迁移到 TypeScript 的助手。当然,只有当 Java 库在 JavaScript 中也可用时,此迁移才能完全正常工作,否则,您将必须提供实现或手动将使用的库更改为现有的 JavaScript 库。
您确实可以从 Github 上的 QuickStart 项目开始。当您运行 mvn generate-sources
, 发生的是 src/main/java
中的 Java 源代码被转译为 TypeScript。 JSweet生成过程配置在pom.xml
中文件与 Maven JSweet 插件。在这里你可以告诉 JSweet 生成什么以及在哪里生成。查看插件的完整选项列表 here .所以,根据 pom.xml
文件中,JSweet 配置为:
<plugin>
<groupId>org.jsweet</groupId>
<artifactId>jsweet-maven-plugin</artifactId>
<version>1.1.1</version>
<configuration>
<verbose>true</verbose>
<tsOut>target/ts</tsOut>
<outDir>target/js</outDir>
<candiesJsOut>webapp</candiesJsOut>
<targetVersion>ES3</targetVersion>
</configuration>
[...]
因为 tsOut
选项,您将在 target/ts
中找到生成的 TypeScript 代码目录。
因此,为了从那里翻译完整的 Java 程序,您需要在 src/main/java
中复制粘贴您的 Java 源代码。 .然后,再次运行 mvn generate-sources
.
请注意,要使此命令成功,您的 Java 文件首先需要从 Java 的角度进行编译。这意味着如果您的 Java 源文件使用其他 Java 库,则这些库必须在您的类路径中可用。因此,与 Maven 下的任何 Java 项目一样,您需要设置一个 <dependencies>
您的 pom.xml
部分.
使用外部 Java 库可能是个问题,因为这些 Java 库可能在 JSweet/TypeScript 中不可用。因此,您很可能会在 target/ts
中生成 TypeScript 文件。目录,但由于在 TypeScript 中使用了不存在的 API,因此转译将报告许多错误。
从那里,您可以:
关于typescript - 安装了 jSweet。怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39253788/