java - Eclipse 自定义 java 编译器

标签 java eclipse jsf compiler-construction jsf-2

我正在使用 eclipse 创建我的 jsf 项目。

我创建了自己的组件,我不希望其他程序员能够使用 jsf 常规组件,例如 h:inputtext 等。

我如何在 Eclipse 中做到这一点,如果用户添加像 h:inputtext 这样的特定标签,他会在页面中以及尝试运行它时看到错误?

最佳答案

那不是 Java,那是 JavaServer Faces。

一般来说,您无法让其他开发者实现这一目标。如果需要,他们规避它。

可以做的是强制执行一项策略,即使用您的组件而不是现有的 JSF 组件,然后在构建时验证这一点。您的源存储库或构建服务器(首选)应该对此进行测试并使操作失败。这还允许开发人员在需要本地调试时使用标准 JSF,只要它不共享即可。

为了检查 JSF 页面,您可以利用它作为 XML 文档的优势,并使用 XSLT 来验证所有标记和属性。我的方法是检查所有标签上的 namespace ,如果在黑名单中发现则触发失败。

关于java - Eclipse 自定义 java 编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3487016/

相关文章:

java - 为什么通过 Math.pow() 递减 Integer.MIN_VALUE 会返回相同的值?

java - 这是什么意思 : Not a v4. 0.0 POM。对于项目 org.codehaus.mojo:rpm-maven-plugin

java - 调用开发服务器(在本地主机上)时,Google Cloud Endpoints 传递带有空字段的对象

java - 我应该使用 Facelets "jsfc"属性吗?

jsf - 遍历 JSF 1.2 中的列表

jquery - Primefaces 下拉图标对齐方式?

java - 如何格式化字符串中的数组

java - 没有注释的 JAXB Unmarshal

javascript - Rhino:如何让Rhino计算Java字符串上的RegEx表达式?

eclipse - 语法高亮 : How Does Eclipse Do It So Fast?