我在使用WSO2 DSS 3.2.2时遇到问题,并尝试从源代码纠正问题,本主题不是要关注这个特定问题,而是要求任何有建设WSO2产品经验的人帮忙另外还有更好的方法来修正WSO2代码。
对于这种情况,问题类是org.wso2.carbon.dataservices.core.description.query.SQLQuery,对于WSO2 DSS 3.2.2,由turing chunck 13分发,然后我使用以下方法检查源:
svn checkout https://svn.wso2.org/repos/wso2/carbon/platform/tags/turing-chunk13 wso2-turing-chunk13
结帐结束后,由于我的重点只是DSS,我在XPath // profile [@id ='默认] /模块中的wso2-turing-chunk13 / products / pom.xml中添加到文件中节点dss /3.2.2,存在所有评论的产品模块,然后取消解开我只是添加了新的。
测试我运行的构建和产品分发:
mvn clean compile install -Dmaven.test.skip=true
好的,现在是时候找到SQLQuery.java进行更改,因为我使用过:
find . -name 'SQLQuery.java'
返回:
./components/data-services/org.wso2.carbon.dataservices.core/4.2.1/src/main/java/org/wso2/carbon/dataservices/core/description/query/SQLQuery.java
./components/data-services/org.wso2.carbon.dataservices.core/4.2.2/src/main/java/org/wso2/carbon/dataservices/core/description/query/SQLQuery.java
./components/data-services/org.wso2.carbon.dataservices.core/4.2.3/src/main/java/org/wso2/carbon/dataservices/core/description/query/SQLQuery.java
./components/data-services/org.wso2.carbon.dataservices.core/4.2.4/src/main/java/org/wso2/carbon/dataservices/core/description/query/SQLQuery.java
./components/data-services/org.wso2.carbon.dataservices.core/4.2.0/src/main/java/org/wso2/carbon/dataservices/core/description/query/SQLQuery.java
现在是我感到困惑的一点,然后出现疑问:
为什么在同一个chunck有5个不同的来源? 如果我对这些源中的任何一个进行了更改,没有人在产品发行版中编译,我测试了校正以检查和测试过于在上面的5源代码中引入了拼写错误,并且在编译时没有出现错误,我必须配置更多的东西在其中一个版本的pom.xml中进行产品编译?
以上步骤基于:https://docs.wso2.com/display/DSS322/Building+from+Source
答案 0 :(得分:1)
这些不属于同一块。它们用于不同的块(但在组件中的相同位置),并由product-releases
目录中的各自块引用。
要修补DSS,您只需构建相关版本。要找到这一点,最简单的方法是在DSS包中进行检查 - 转到<DSS>/repository/components/plugins
并查找org.wso2.carbon.dataservices.core
jar的版本。
然后修改该组件版本的源代码,构建它并修补DSS。