Using Couchbase Lite Java edition on Windows

i have download as zip file from git.

That won’t work, it’s been a known issue in GitHub for years. The zip file won’t contain the submodules. You need to clone the repo and checkout the submodules to build the project.

hi,

performed following steps:

$ git clone GitHub - couchbase/couchbase-lite-java: Portable java version of Couchbase Lite
$ cd couchbase-lite-java
$ git submodule init && git submodule update

Than executed the following command:

gradlew build --stracktrace

After executing the above mentioned command i receive following exception / output:

E:\Barqsol\couchbase-lite-java>gradlew build --stacktrace
:libraries:couchbase-lite-java-core:compileJava
warning: [options] bootstrap class path not set in conjunction with -source 1.6
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 warning
:libraries:couchbase-lite-java-core:processResources UP-TO-DATE
:libraries:couchbase-lite-java-core:classes
:libraries:couchbase-lite-java-core:jar
:libraries:couchbase-lite-java-native:compileJava
:libraries:couchbase-lite-java-native:processResources UP-TO-DATE
:libraries:couchbase-lite-java-native:classes
:libraries:couchbase-lite-java-native:compileWindows_amd64Native_librarySharedLi
braryNative_libraryC
com_couchbase_lite_storage_JavaSQLiteStorageEngine.c
E:\Barqsol\couchbase-lite-java\libraries\couchbase-lite-java-native\src\main\c\c
om_couchbase_lite_storage_JavaSQLiteStorageEngine.c(8) : fatal error C1083: Cann
ot open include file: ‘stdbool.h’: No such file or directory
:libraries:couchbase-lite-java-native:compileWindows_amd64Native_librarySharedLi
braryNative_libraryC F
AILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ‘:libraries:couchbase-lite-java-native:compileWindows_
    amd64Native_librarySharedLibraryNative_libraryC’.

C compiler failed; see the error output for details.

  • Try:
    Run with --info or --debug option to get more log output.

  • Exception is:
    org.gradle.api.tasks.TaskExecutionException: Execution failed for task ‘:librari
    es:couchbase-lite-java-native:compileWindows_amd64Native_librarySharedLibraryNat
    ive_libraryC’.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
    ecuteActions(ExecuteActionsTaskExecuter.java:69)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
    ecute(ExecuteActionsTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExec
    uter.execute(PostExecutionAnalysisTaskExecuter.java:35)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.exec
    ute(SkipUpToDateTaskExecuter.java:64)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execut
    e(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecu
    ter.execute(SkipEmptySourceFilesTaskExecuter.java:42)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter
    .execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execut
    e(SkipOnlyIfTaskExecuter.java:53)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter
    .execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailur
    e(AbstractTask.java:305)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
    orker.executeTask(AbstractTaskPlanExecutor.java:79)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
    orker.processTask(AbstractTaskPlanExecutor.java:63)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorW
    orker.run(AbstractTaskPlanExecutor.java:51)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(Defaul
    tTaskPlanExecutor.java:23)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(Defau
    ltTaskGraphExecuter.java:88)
    at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTask
    ExecutionAction.java:29)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
    r.java:62)
    at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExec
    uter.java:23)
    at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecu
    ter.java:68)
    at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildEx
    ecutionAction.java:32)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
    r.java:62)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecute
    r.java:55)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(Default
    GradleLauncher.java:149)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradle
    Launcher.java:106)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLaun
    cher.java:86)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildCon
    troller.run(InProcessBuildActionExecuter.java:80)
    at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.jav
    a:33)
    at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.jav
    a:24)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
    ssBuildActionExecuter.java:36)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
    ssBuildActionExecuter.java:26)
    at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)
    at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.jav
    a:171)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.
    execute(CommandLineActionFactory.java:237)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.
    execute(CommandLineActionFactory.java:210)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRunti
    meValidationAction.java:35)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRunti
    meValidationAction.java:24)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(
    CommandLineActionFactory.java:206)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(
    CommandLineActionFactory.java:169)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionRep
    ortingAction.java:33)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionRep
    ortingAction.java:22)
    at org.gradle.launcher.Main.doAction(Main.java:33)
    at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBoots
    trap.java:54)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.j
    ava:35)
    at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
    at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.ja
    va:30)
    at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:127)
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:58)
    Caused by: org.gradle.api.GradleException: C compiler failed; see the error outp
    ut for details.
    at org.gradle.nativeplatform.toolchain.internal.CommandLineTool.execute(
    CommandLineTool.java:62)
    at org.gradle.nativeplatform.toolchain.internal.msvcpp.NativeCompiler.ex
    ecute(NativeCompiler.java:62)
    at org.gradle.nativeplatform.toolchain.internal.msvcpp.NativeCompiler.ex
    ecute(NativeCompiler.java:30)
    at org.gradle.nativeplatform.toolchain.internal.OutputCleaningCompiler.c
    ompileSources(OutputCleaningCompiler.java:46)
    at org.gradle.nativeplatform.toolchain.internal.OutputCleaningCompiler.e
    xecute(OutputCleaningCompiler.java:38)
    at org.gradle.nativeplatform.toolchain.internal.OutputCleaningCompiler.e
    xecute(OutputCleaningCompiler.java:26)
    at org.gradle.language.nativeplatform.internal.incremental.IncrementalNa
    tiveCompiler.doCleanIncrementalCompile(IncrementalNativeCompiler.java:79)
    at org.gradle.language.nativeplatform.internal.incremental.IncrementalNa
    tiveCompiler.execute(IncrementalNativeCompiler.java:67)
    at org.gradle.language.nativeplatform.internal.incremental.IncrementalNa
    tiveCompiler.execute(IncrementalNativeCompiler.java:38)
    at org.gradle.language.nativeplatform.tasks.AbstractNativeCompileTask.co
    mpile(AbstractNativeCompileTask.java:76)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
    at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
    actory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:235)

      at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
    

actory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:222)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskF
actory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:200)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.ex
ecuteActions(ExecuteActionsTaskExecuter.java:61)
… 47 more
Caused by: org.gradle.process.internal.ExecException: Process ‘command ‘C:\Progr
am Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\cl.exe’’ finished with
non-zero exit value 2
at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNo
rmalExitValue(DefaultExecHandle.java:365)
at org.gradle.process.internal.DefaultExecAction.execute(DefaultExecActi
on.java:31)
at org.gradle.nativeplatform.toolchain.internal.CommandLineTool.execute(
CommandLineTool.java:60)
… 63 more

BUILD FAILED

Total time: 13.378 secs

Look like there is no stdbool.h.

What Version of the Visual Studio are you using? and What version is your Windows?

i am using visual studio 2010 with windows 8.

Visual Studio 2010 doesn’t support C99 module. Would it be possible to upgrade Visual Studio to the latest version or at least 2013?

Just noticed that our Github said 2010 and upper and that was a mistake. I’m really sorry for the confusion.

ok if Visual Studio version is not the issue than where is issue, totally stuck on this point, can guide me, what i have to do to resolve these issues ?

I think you misunderstood. He said Visual Studio is the issue. You need to upgrade. The GitHub page saying that 2010 will work is a mistake.

ok thanks, i am upgrading my visual studio.

Hi @zeeshan_niazi, just wanna check if upgrading the visual studio helped? Please let us know.

hi @ Pasin,
yes upgrading visual studio to 2013, fixed my issue, i build jar files through gradle.and used those jar in my couchbase lite java code.
thanks.

hi,

i am creating cocuhbase lite document through code:

Map properties = new HashMap();
properties.put(“type”, “list”);
properties.put(“title”, title);
properties.put(“created_at”, currentTimeString);
properties.put(“owner”, “profile:” + userId);
properties.put(“members”, new
ArrayList());
Document document = database.createDocument();
document.putProperties(properties);

Can you help me to create named document as we can create in cocuhbase server like ,

Client.set(“doument_name”,“document_value”);

hi @zeeshan_niazi,

you can use public Document getDocument(String id) to create document with specified document ID.

http://developer.couchbase.com/mobile/develop/references/couchbase-lite/couchbase-lite/database/database/index.html#document-getdocumentstring-id

Thanks!

This error is coming . Please help regarding this. I have already downloaded Visual Studio-13 community with update 4 and installed it and these 3 steps I performed.
$ git clone https://github.com/couchbase/couchbase-lite-java.git
$ cd couchbase-lite-java
$ git submodule init && git submodule update

sajalj@SAJALJ ~/couchbase-lite-java (master)
$ gradle build

FAILURE: Build failed with an exception.

  • Where:
    Build file 'C:\Users\sajalj\couchbase-lite-java\libraries\couchbase-lite-java-na
    tive\build.gradle’ line: 51

  • What went wrong:
    A problem occurred evaluating project ‘:libraries:couchbase-lite-java-native’.
    > Could not find method native_library() for arguments [build_e96ziykfwfdqvzyprl
    f1g2qkq$_run_closure2_closure21@744a4d] on project ':libraries:couchbase-lite-ja
    va-native’.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug
    option to get more log output.

BUILD FAILED

Total time: 2.112 secs

I think some problem is coming up with gradle.build file in couchbase-lite-native.
Frankly, I am totally naive to all of these things like toolchain,git,visual studio, cross compiler, native library. I am working as a front end developer and sometimes work on java too. So I am learning couchbase first time …so try to give an explanatory answer.

After installing Visual Studio 13 , In program files(x64) I am seeing that two folders are coming out there, one is visual studio-11 and other is visual studio-12, visual studio-13 is not there.

Hi @sajal_jain,
Please try to use latest Visual Studio 2015?

I installed Visual Studio-15 Community version … when it was installing, in the end it showed that " Installation successful however C++ Redistributable not successful", I don’t know what is it first , after that I again execute the command on Git Shell , and this time also it is giving me the same errror.

sajalj@SAJALJ ~/couchbase-lite-java (master)
$ gradle build --stacktrace

FAILURE: Build failed with an exception.

  • **Where:
    Build file 'C:\Users\sajalj\couchbase-lite-java\libraries\couchbase-lite-java-na
    tive\build.gradle’ line: 51

  • **What went wrong:
    A problem occurred evaluating project ‘:libraries:couchbase-lite-java-native’.
    > Could not find method native_library() for arguments [build_e96ziykfwfdqvzyprl
    f1g2qkq$_run_closure2_closure21@1cbc5cb] on project ':libraries:couchbase-lite-j
    ava-native’.

  • **Try:
    Run with --info or --debug option to get more log output.

  • Exception is:
    org.gradle.api.GradleScriptException: A problem occurred evaluating project ':li
    braries:couchbase-lite-java-native’.
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptR
    unnerImpl.run(DefaultScriptRunnerFactory.java:76)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl$
    1.run(DefaultScriptPluginFactory.java:148)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.
    apply(DefaultScriptPluginFactory.java:156)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildSc
    riptProcessor.java:39)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildSc
    riptProcessor.java:26)
    at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.eva
    luate(ConfigureActionsProjectEvaluator.java:34)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(L
    ifecycleProjectEvaluator.java:55)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProj
    ect.java:487)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProj
    ect.java:85)
    at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(Task
    PathProjectEvaluator.java:47)
    at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuil
    dConfigurer.java:35)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(Default
    GradleLauncher.java:129)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradle
    Launcher.java:106)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLaun
    cher.java:86)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildCon
    troller.run(InProcessBuildActionExecuter.java:90)
    at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(Exe
    cuteBuildActionRunner.java:28)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildA
    ctionRunner.java:35)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
    ssBuildActionExecuter.java:41)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProce
    ssBuildActionExecuter.java:28)
    at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.exe
    cute(DaemonUsageSuggestingBuildActionExecuter.java:50)
    at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.exe
    cute(DaemonUsageSuggestingBuildActionExecuter.java:27)
    at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:40)
    at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.jav
    a:169)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.
    execute(CommandLineActionFactory.java:237)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.
    execute(CommandLineActionFactory.java:210)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRunti
    meValidationAction.java:35)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRunti
    meValidationAction.java:24)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(
    CommandLineActionFactory.java:206)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(
    CommandLineActionFactory.java:169)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionRep
    ortingAction.java:33)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionRep
    ortingAction.java:22)
    at org.gradle.launcher.Main.doAction(Main.java:33)
    at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBoots
    trap.java:54)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.j
    ava:35)
    at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
    Caused by: org.gradle.api.internal.MissingMethodException: Could not find method
    native_library() for arguments [build_e96ziykfwfdqvzyprlf1g2qkq$_run_closure2_c
    losure21@1cbc5cb] on project ‘:libraries:couchbase-lite-java-native’.
    at org.gradle.api.internal.AbstractDynamicObject.methodMissingException(
    AbstractDynamicObject.java:68)
    at org.gradle.api.internal.AbstractDynamicObject.invokeMethod(AbstractDy
    namicObject.java:56)
    at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(Composite
    DynamicObject.java:175)
    at org.gradle.groovy.scripts.BasicScript.methodMissing(BasicScript.java:
    79)
    *at build_e96ziykfwfdqvzyprlf1g2qkq$_run_closure2.doCall(C:\Users\sajalj*
    couchbase-lite-java\libraries\couchbase-lite-java-native\build.gradle:51)
    at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedActi
    on.java:67)
    at org.gradle.api.internal.plugins.ExtensionsStorage$ExtensionHolder.con
    figure(ExtensionsStorage.java:145)
    at org.gradle.api.internal.plugins.ExtensionsStorage.configureExtension(
    ExtensionsStorage.java:69)
    at org.gradle.api.internal.plugins.DefaultConvention$ExtensionsDynamicOb
    ject.invokeMethod(DefaultConvention.java:207)
    at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(Composite
    DynamicObject.java:150)
    at org.gradle.groovy.scripts.BasicScript.methodMissing(BasicScript.java:
    79)
    at build_e96ziykfwfdqvzyprlf1g2qkq.run(C:\Users\sajalj\couchbase-lite-ja
    va\libraries\couchbase-lite-java-native\build.gradle:50)
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptR
    unnerImpl.run(DefaultScriptRunnerFactory.java:74)
    … 35 more

BUILD FAILED

Total time: 2.251 secs

:worried:

. Is there any solution for this. Do I need to make some changes in build.gradle file in couchbase-lite-native , and how to setup Visual C++ toolchain in visual studio using this command “sudo apt-get install gcc-multilib”

and this is the content of build.gradle

apply plugin: 'c’
apply plugin: 'java’
apply plugin: ‘maven’

version = System.getenv(“MAVEN_UPLOAD_VERSION”)

model {
platforms {
osx_x86 {
architecture "x86"
operatingSystem “osx”
}
osx_x86_64 {
architecture "x86_64"
operatingSystem “osx”
}
linux_x86 {
architecture "x86"
operatingSystem “linux”
}
linux_x86_64 {
architecture "x86_64"
operatingSystem “linux”
}
linux_amd64 {
architecture "amd64"
operatingSystem “linux”
}
windows_x86 {
architecture "x86"
operatingSystem “windows”
}
windows_x86_64 {
architecture "x86_64"
operatingSystem “windows”
}
windows_amd64 {
architecture "amd64"
operatingSystem “windows”
}
}

**toolChains {**
    **visualCpp(VisualCpp)**
    **gcc(Gcc)**
    **clang(Clang)**
**}**

}

sources {
native_library {
c(CSourceSet) {
source {
srcDir “src/main/c”
}
exportedHeaders {
srcDir “src/main/include”
}
}
}
}

libraries {
native_library {
baseName “CouchbaseLiteJavaNative”
}

**all {**
    **binaries.all {**
        **if (targetPlatform.operatingSystem.macOsX) {**
            **cCompiler.args '-I', "${org.gradle.internal.jvm.Jvm.current().javaHome}/include"**
            **cCompiler.args '-I', "${org.gradle.internal.jvm.Jvm.current().javaHome}/include/darwin"**
            **linker.args '-framework', "JavaVM"**
        **} else if (targetPlatform.operatingSystem.linux) {**
            **cCompiler.args '-I', "${org.gradle.internal.jvm.Jvm.current().javaHome}/include"**
            **cCompiler.args '-I', "${org.gradle.internal.jvm.Jvm.current().javaHome}/include/linux"**
        **} else if (targetPlatform.operatingSystem.windows) {**
            **cCompiler.args "-I${org.gradle.internal.jvm.Jvm.current().javaHome}/include"**
            **cCompiler.args "-I${org.gradle.internal.jvm.Jvm.current().javaHome}/include/win32"**
        **}**
    **}**
**}**

}

binaries.withType(SharedLibraryBinary) { binary ->
if (!buildable) {
return
}

**def builderTask = binary.tasks**

**jar.into("native/${targetPlatform.operatingSystem.name}/${targetPlatform.architecture.name}") {**
        **from builderTask.outputFile**
**}**

**jar.dependsOn builderTask**

}

task createMavenDirectory(type: Exec) {
ext {
uploadUser = System.getenv(“MAVEN_UPLOAD_USERNAME”) + “:” + System.getenv(“MAVEN_UPLOAD_PASSWORD”)
mkcolPath = System.getenv(“MAVEN_UPLOAD_REPO_URL”) + “com/couchbase/lite/couchbase-lite-java-native/” + version + “/”
}
commandLine “curl”, “–user”, uploadUser, “-X”, “MKCOL”, mkcolPath
}

// this hack is only needed for apache mod_dav based Maven repo’s like file.couchbase.com. otherwise, skip it
createMavenDirectory.onlyIf { System.getenv(“MAVEN_UPLOAD_REPO_URL”).contains(“files”) }

// first create the directory, then do the upload
task uploadArchivesWrapper(dependsOn: createMavenDirectory) << {
uploadArchives.execute()
}

// this will upload, but will not first create a directory (which is needed on some servers)
uploadArchives {
repositories {
mavenDeployer {
repository(url: System.getenv(“MAVEN_UPLOAD_REPO_URL”)) {
authentication(userName: System.getenv(“MAVEN_UPLOAD_USERNAME”), password: System.getenv(“MAVEN_UPLOAD_PASSWORD”))
}
pom.version = version
pom.groupId = 'com.couchbase.lite’
pom.artifactId = 'couchbase-lite-java-native’
pom.project {
licenses {
license {
name 'Couchbase Community Edition License Agreement’
url 'http://www.couchbase.com/agreement/community
distribution ‘repo’
}
}
}
}
}
}

task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources’
from sourceSets.main.java.srcDirs
}

artifacts {
archives sourcesJar
}

sir plz give me the solution

Hi @sajal_jain,

I tested couchbase-lite-java build on windows with following environment:

  • OS: Windows Server 2012 R2 Standard Build 9600
  • Microsoft Visual Studio Community 2013 with Update 4 (which was latest when I installed)

Note: With VS installation, Microsoft Visual C++ 2010 and 2012 x64/x86 Redistributable were installed.

From your message, the build was failed with couchbase-lite-java-native which is native library.
As you failed to installed VC++ Redistributable, it might cause the problem.

I hope this helps you.

Thanks!

@sajal_jain What is your gradle version? Could you make sure to use gradle version 2.2.1?

I ran into the same error, “Could not find method native_library() for arguments” today and that happened because I upgraded my gradle from 2.2.1 to 2.6. Gradle Native changed a lot recently.