Neste tutorial, você aprenderá como utilizar o InterPlanetary File System (IPFS) com a biblioteca Nabu em um projeto Java gerenciado pelo Maven. IPFS é um protocolo peer-to-peer para compartilhar e acessar arquivos de forma distribuída na internet. A biblioteca Nabu é uma implementação Java que permite a interação com o IPFS dentre outra forma de conexão.
Requisitos
- JDK 8 ou superior
- Maven
- IPFS instalado e executando localmente
Passo 1: Crie um novo projeto Maven
Primeiro, crie um novo projeto Maven. No terminal, execute o seguinte comando:
mvn archetype:generate -DgroupId=com.example -DartifactId=ipfs-nabu-example -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
Este comando cria um novo projeto Maven com o groupId com.example e o artifactId ipfs-nabu-example.
Em seguida, navegue até a pasta do projeto recém-criado:
cd ipfs-nabu-example
Passo 2: Adicione a dependência do Nabu
Adicione a dependência do Nabu no arquivo pom.xml do seu projeto com a versão específica em https://jitpack.io/#Peergos/nabu:
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.peergos</groupId>
<artifactId>nabu</artifactId>
<version>$LATEST_VERSION</version>
</dependency>
</dependencies>
Passo 3: Crie um exemplo de aplicativo Java
Crie um novo arquivo Java chamado NabuExample.java no diretório src/main/java/com/example com o seguinte conteúdo:
import com.peergos.ipfs.*;
import com.peergos.ipfs.core.*;
import com.peergos.shared.io.ipfs.cid.*;
import com.peergos.shared.io.ipfs.multibase.*;
import com.peergos.shared.io.ipfs.multihash.*;
import java.io.*;
public class NabuExample {
public static void main(String[] args) throws IOException {
// Instancie o cliente IPFS usando a API HTTP local (no caso, um nó IPFS local)
IPFS ipfs = new IPFS("localhost", 5001);
// Arquivo para ser adicionado ao IPFS
byte[] fileContent = "Hello, IPFS using Nabu!".getBytes();
ByteArrayInputStream inputStream = new ByteArrayInputStream(fileContent);
// Adicionando o arquivo ao IPFS
Cid cid = ipfs.add(inputStream).get(0);
System.out.println("Arquivo adicionado com CID: " + cid);
// Recuperando o arquivo do IPFS
Multihash multihash = Multihash.fromBase58(cid.toBase58());
byte[] retrievedContent = ipfs.cat(multihash);
// Exibindo o conteúdo do arquivo
String retrievedString = new String(retrievedContent);
System.out.println("Conteúdo recuperado do IPFS: " + retrievedString);
}
}
Passo 4: Execute o exemplo
Antes de executar o exemplo, certifique-se de ter um nó IPFS local em execução. Se você ainda não possui o IPFS instalado, siga as instruções de instalação no site oficial do IPFS: https://ipfs.io/#install
Inicie um nó IPFS local
Com o IPFS instalado, inicie um nó IPFS executando o seguinte comando no terminal:
ipfs daemon
Isso iniciará o nó IPFS local na porta 5001, que é a porta usada no exemplo.
Compile e execute o projeto Maven
Navegue até o diretório do seu projeto Maven no terminal e execute o seguinte comando para compilar e executar o projeto:
mvn compile exec:java -Dexec.mainClass="NabuExample"
Este comando compila o projeto e executa a classe NabuExample. Se tudo estiver configurado corretamente, você verá uma saída semelhante a esta:
Arquivo adicionado com CID: Qm...
Conteúdo recuperado do IPFS: Hello, IPFS using Nabu!
A saída exibirá o CID (Content Identifier) do arquivo adicionado ao IPFS e o conteúdo recuperado do IPFS.
E pronto! Você acabou de adicionar e recuperar um arquivo no IPFS usando a biblioteca Nabu em um projeto Java com Maven.
Se você deseja explorar mais sobre o IPFS e a biblioteca Nabu, consulte a documentação oficial e o repositório no GitHub:
- IPFS: https://docs.ipfs.io/
- Nabu: https://github.com/Peergos/nabu
Oldest comments (0)