我正在尝试从 Java 启动一个简单的 Pentaho (Kettle/Spoon) Job (.ktr)。我的项目依赖项配置了 graddle,所以理论上我只需添加 pentaho-kettle 和 pentaho-big-data-plugin 模块作为依赖项即可启动工作。
问题是pentaho-big-data-plugin模块自带错误:它不包含jsf-api:1.1 jar,所以项目编译失败。
这是我的 build.gradle:
compile group: 'pentaho-kettle', name: 'kettle-core', version: '7.1.0.0-12'
compile group: 'pentaho-kettle', name: 'kettle-dbdialog', version: '7.1.0.0-12'
compile group: 'pentaho-kettle', name: 'kettle-engine', version: '7.1.0.0-12'
compile 'pentaho:pentaho-big-data-plugin:7.1.0.0-12'
这是 IntelliJ 在尝试编译时提供的错误:
Warning:root project 'tfg-j-hipster-app': Web Facets/Artifacts will not be configured properly Details: org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':runtimeClasspath'. Caused by: org.gradle.internal.resolve.ArtifactNotFoundException: Could not find jsf-api.jar (javax.faces:jsf-api:1.1). Searched in the following locations: https://repo1.maven.org/maven2/javax/faces/jsf-api/1.1/jsf-api-1.1.jar
以下是我正在搜索的存储库:
repositories {
mavenLocal()
mavenCentral()
jcenter()
maven { url 'http://repo.spring.io/milestone' }
maven { url 'http://repo.spring.io/snapshot' }
maven { url 'https://repository.jboss.org/nexus/content/repositories/releases' }
maven { url 'https://oss.sonatype.org/content/repositories/releases' }
maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
maven { url 'http://repo.maven.apache.org/maven2' }
// My repositories
maven { url 'http://nexus.pentaho.org/content/groups/omni' }
}
我的 Pentaho 版本是 7.1.0.0-12。
最佳答案
如果您从 SourceForge 下载已编译的包,你应该得到你正在使用的 Pentaho 版本所需的所有 jar。
现在,就 jsf-api 而言,谷歌上的第 4 个响应 find jar for jsf-api
是 https://mvnrepository.com/artifact/com.sun.faces/jsf-api。请找到合适的版本。
但是,我想知道运行时错误如何阻止您的类编译。您的
错误也许是其他的。
关于java - 由于推荐的 Jar 中缺少工件,无法从 Java 启动简单的 Pentaho 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45837517/