<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |
<html xmlns="http://www.w3.org/1999/xhtml"> | |
<head> | |
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> | |
<!-- -*- xhtml -*- --> | |
<title>Tutorial do módulo de modelo de arquivo NetBeans para Plataforma NetBeans 6.0</title> | |
<link rel="stylesheet" type="text/css" href="../../../netbeans.css"> | |
<meta name="AUDIENCE" content="NBUSER"> | |
<meta name="TYPE" content="ARTICLE"> | |
<meta name="EXPIRES" content="N"> | |
<meta name="developer" content="gwielenga@netbeans.org"> | |
<meta name="indexed" content="y"> | |
<meta name="description" | |
content="A short guide to using the Nodes API."> | |
<!-- Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. --> | |
<!-- Use is subject to license terms.--> | |
</head> | |
<body> | |
<h1>Tutorial Módulo do modelo de arquivo do NetBeans</h1> | |
<p>Este tutorial demonstra como criar um módulo contendo modelos de arquivo. Depois que os usuários tiverem instalado o módulo no IDE, os modelos de arquivo estarão disponíveis no assistente para Novo arquivo. O compartilhamento de modelos de arquivo é fácil, desde que você tenha um módulo que os contenha: o IDE permite que você crie um binário que pode ser disponibilizado para outras pessoas, que podem instalá-lo através do Gerenciador de plug-ins. | |
</p><p>Um modelo de arquivo consiste em um arquivo de modelo, um arquivo de descrição HTML e um ícone. O arquivo de descrição HTML exibe informações sobre o modelo no assistente para Novo arquivo. O ícone identifica o modelo e o distingue de outros modelos no assistente para Novo arquivo. Neste tutorial, você criará um novo modelo de arquivo copiando o conteúdo de um modelo de arquivo existente em um arquivo vazio. Em seguida, depois de ter definido um arquivo de descrição para o assistente para Novo arquivo e um ícone de distinção, registre o modelo, o arquivo de descrição HTML e o ícone no arquivo de configuração NetBeans, ou seja, no arquivo <tt>layer.xml</tt>. | |
</p><p><b>Conteúdo</b></p> | |
<img src="../../images/articles/60/netbeans-stamp60-61.gif" class="stamp" width="114" height="114" alt="O conteúdo desta página se aplica ao IDE NetBeans 6.1 " title="O conteúdo desta página se aplica ao IDE NetBeans 6.1"> </p> | |
<ul class="toc"> | |
<li><a href="#freemarker">Introdução ao FreeMarker</a></li> | |
<li><a href="#creatingthemoduleproject">Criando o projeto do módulo </a></li> | |
<li><a href="#creatingandgettingtoknowthemainfiles">Criando o modelo de arquivo</a> | |
<ul> | |
<li><a href="#creating-the-template-file">Criando o arquivo de modelo</a> | |
</li><li><a href="#creating-the-description-file">Criando o arquivo de descrição</a> | |
</li><li><a href="#getting-an-icon">Obtendo um ícone</a> | |
</li></ul></li> | |
<li><a href="#registering">Registrando o modelo de arquivo</a></li> | |
<li><a href="#building">Construindo e instalando o módulo</a></li> | |
<li><a href="#additional">Fornecendo variáveis adicionais</a></li> | |
<li><a href="#license">Fornecendo uma licença de projeto</a></li> | |
</ul> | |
<p><b>Para seguir este tutorial, você preciso dos softwares e recursos listados na tabela seguinte.</b></p> | |
<table> | |
<tbody> | |
<tr> | |
<th class="tblheader" scope="col">Software ou recurso</th> | |
<th class="tblheader" scope="col">Versão necessária</th> | |
</tr> | |
<tr> | |
<td class="tbltd1">NetBeans IDE</td> | |
<td class="tbltd1">versão <a href="http://download.netbeans.org/netbeans/6.1/final/">versão 6.1</a> ou<br> | |
versão 6.0</td> | |
</tr> | |
<tr> | |
<td class="tbltd1">Java Developer Kit (JDK)</td> | |
<td class="tbltd1"><a href="http://java.sun.com/javase/downloads/index.jsp">versão 6</a> ou<br> | |
versão 5</td> | |
</tr> | |
</tbody> | |
</table> | |
<p class="tips">Opcionalmente, para fins de solução de problemas, você pode <a href="http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=3755">baixar a amostra completa</a> e inspecionar os códigos-fonte. | |
</p><h2 class="tutorial"><a name="freemarker"></a>Introdução ao FreeMarker</h2> | |
<p>A partir do NetBeans IDE 6.0, é possível usar opcionalmente a linguagem de modelo <a href="http://freemarker.org/">FreeMarker</a> para definir os modelos de arquivo. Vários dos modelos incluídos no IDE são definidos dessa forma. Por exemplo, o modelo da classe Java é definido desta forma: | |
</p><pre class="examplecode"><#assign licenseFirst = "/*"> | |
<#assign licensePrefix = " * "> | |
<#assign licenseLast = " */"> | |
<#include "../Licenses/license-${project.license}.txt"> | |
<#if package?? && package != ""> | |
package ${package}; | |
</#if> | |
/** | |
* | |
* @author ${user} | |
*/ | |
public class ${name} { | |
}</pre> | |
<p>O benefício do uso do FreeMarker pode ser visto no modelo acima, ou seja, você pode adicionar <i>lógica</i> aos modelos, através de <i>diretivas</i> como if/elseif/else e construções loop. Para obter uma descrição completa da linguagem de modelo FreeMarker, consulte o <a href="http://freemarker.org/docs/index.html">Manual do FreeMarker</a>, em particular, o capítulo <a href="http://freemarker.org/docs/dgui_template_directives.html">Diretivas</a>. Neste tutorial, você verá, entre outras coisas, quais são as etapas necessárias para incorporar o FreeMarker nos modelos de arquivo. | |
<!-- ===================================================================================== --> | |
</p><h2 class="tutorial"><a name="creatingthemoduleproject"></a>Criando o projeto do módulo </h2> | |
<p>Começaremos percorrendo o assistente para Novo projeto de módulo, que criará uma estrutura de código-fonte, com todos os requisitos mínimos, para o novo módulo. | |
</p><ol> | |
<li>Escolha Arquivo > Novo projeto (Ctrl-Shift-N). Em Categorias, selecione Módulos do NetBeans. Em Projetos, selecione Projeto de módulo e clique em Próximo.</li> | |
<p></p><li>No painel Nome e localização, digite <tt>AdditionalFileTemplates</tt> em Nome do projeto. | |
Altere Local do projeto para qualquer diretório no computador. Deixe marcados o botão de opção Módulo independente e a caixa de verificação Definir como projeto principal. Clique em Próximo. | |
<p></p></li><li>No painel Configuração básica de módulos, substitua <tt>yourorghere</tt> em Nome base de código por <tt>myorg</tt>, de maneira que o nome base de código inteiro seja <tt>org.myorg.additionalfiletemplates</tt>. Adicione espaços ao Nome de exibição do módulo padrão, para que seja alterado para <tt>Modelos de arquivo adicionais</tt>. Deixe o local do conjunto de localizações e a camada XML, de modo que serão armazenados em um pacote com o nome <tt>org/myorg/additionalfiletemplates</tt>. Clique em Terminar.</li></ol> | |
<p> O IDE cria o projeto <tt>Modelos de arquivo adicionais</tt>. O projeto contém todos os metadados de projeto e fontes, como o script de construção Ant do projeto. O projeto se abre no IDE. Você pode ver a estrutura lógica na janela Projetos (Ctrl-1) e a estrutura de arquivos na janela Arquivos (Ctrl+2). Por exemplo, a janela Projetos agora deve ter esta aparência: | |
</p><p><img border="1" src="../../images/tutorials/filetemplates/initial-projects-window-60.png" alt="Janela Projetos iniciais."> | |
<br /> | |
<!-- ===================================================================================== --> | |
</p><h2><a name="creating-the-file-template"></a>Criando o modelo de arquivo</h2> | |
<p>Um modelo de arquivo consiste em um arquivo de modelo, um arquivo de descrição HTML e um ícone. Uma maneira fácil de criar um novo modelo de arquivo é copiar o conteúdo de um modelo de arquivo existente para um arquivo vazio. Em seguida, após ter definido um arquivo de descrição para o assistente para Novo arquivo e um ícone de distinção, você está pronto para registrar o modelo no arquivo <tt>layer.xml</tt>. | |
</p><div class="indent"> | |
<p></p><h3 class="tutorial"><a name="creating-the-template-file"></a>Criando o arquivo de modelo</h3> | |
<p> | |
</p><ol> | |
<li>Clique com o botão direito do mouse no nó <tt>Modelos de arquivo adicionais</tt> e escolha Novo > Outro. No assistente para Novo arquivo, em Categorias, escolha Outra e em Tipos de arquivos, escolha HTML. Clique em Próximo. | |
<p></p></li><li>Digite <tt>Descrição</tt> em Nome do arquivo. Clique em Explorar e vá para <tt>src/org/myorg/additionalfiletemplates</tt>. Clique em Selecionar pasta. Clique em Terminar.</p> | |
<p>Um novo arquivo HTML, chamado <tt>HTML.html</tt>, se abre no editor de código-fonte, contendo o conteúdo padrão do arquivo HTML mostrado abaixo: | |
</p><pre class="examplecode"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> | |
<html> | |
<head> | |
<title></title> | |
</head> | |
<body> | |
</body> | |
</html></pre> | |
<p></p></li><li>Altere o arquivo HTML de acordo com suas necessidades. Você pode adicionar as seguintes variáveis predefinidas, se necessário: | |
<p></p><ul> | |
<li>${date} insere a data atual, neste formato: Fevereiro, 16, 2008 | |
</li><li>${encoding} insere a codificação padrão, tal como: UTF-8 | |
</li><li>${name} insere o nome do arquivo. | |
</li><li>${nameAndExt} insere o nome do arquivo, junto com sua extensão. | |
</li><li>${package} insere o nome do pacote em que o arquivo é criado. | |
</li><li>${time} insere a hora atual, neste formato: 7:37:58 PM | |
</li><li>${user} insere o nome do usuário. | |
</li></ul> | |
<p><b class="notes">Observação:</b> os usuários podem definir valores para estas variáveis no Gerenciador de modelos, que fica no menu Ferramentas. Lá, eles rolam para o final, para "Propriedades da configuração do usuário". O arquivo <tt>user.properties</tt> nesse nó pode ser usado para definir os valores acima, para substituir os fornecidos pelo sistema. Entretanto, geralmente, os usuários não fazem isso porque os valores padrão das variáveis acima fazem um bom trabalho. | |
</p><p>Além das variáveis predefinidas, você pode fornecer variáveis adicionais aos usuários, através do módulo. Isto será explicado posteriormente neste tutorial. A lista completa de diretivas do FreeMarker também pode ser usada para adicionar lógica ao modelo: | |
</p><p></p><ul> | |
<li>#assign | |
</li><li>#else | |
</li><li>#elseif | |
</li><li>#end | |
</li><li>#foreach | |
</li><li>#if | |
</li><li>#include | |
</li><li>#list | |
</li><li>#macro | |
</li><li>#parse | |
</li><li>#set | |
</li><li>#stop | |
</li></ul> | |
<p>Como um exemplo, observe a definição do modelo da classe Java: | |
</p><pre class="examplecode"><#assign licenseFirst = "/*"> | |
<#assign licensePrefix = " * "> | |
<#assign licenseLast = " */"> | |
<#include "../Licenses/license-${project.license}.txt"> | |
<#if package?? && package != ""> | |
package ${package}; | |
</#if> | |
/** | |
* | |
* @author ${user} | |
*/ | |
public class ${name} { | |
}</pre> | |
<p>Para obter informações sobre a diretiva #assign, consulte <a href="#license">Fornecendo uma licença de projeto</a>. Para obter uma descrição completa da linguagem de modelo FreeMarker, consulte o <a href="http://freemarker.org/docs/index.html">Manual do FreeMarker</a>, em particular, o capítulo <a href="http://freemarker.org/docs/dgui_template_directives.html">Diretivas</a>. | |
</p></li> | |
<h3 class="tutorial"><a name="creating-the-description-file"></a>Criando o arquivo de descrição</h3> | |
<ol> | |
<li>Clique com o botão direito do mouse no nó <tt>org.myorg.additionalfiletemplates</tt> e escolha Novo > Outro. Em Categorias, escolha Outro. Em Tipos de arquivo, escolha Arquivo HTML. Clique em Próximo. Digite <tt>HTML</tt> em Nome do arquivo. Clique em Explorar e vá para <tt>src/org/myorg/additionalfiletemplates</tt>. Clique em Selecionar pasta. Clique em Terminar. | |
<p>Um arquivo HTML vazio é aberto no Editor de código-fonte e seu nó aparece na janela Projetos. | |
</p><p></p></li><li>Digite "<tt>Creates new HTML file</tt>" (sem as aspas) entre as marcas <tt><body></tt>, para que o arquivo tenha esta aparência: | |
<pre class="examplecode"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> | |
<html> | |
<head> | |
<title></title> | |
</head> | |
<body> | |
Creates new HTML file. | |
</body></html></pre> | |
</li></ol> | |
<h3 class="tutorial"><a name="getting-an-icon"></a>Obtendo um ícone</h3> | |
<p>O ícone acompanha o modelo de arquivo no assistente para Novo arquivo. Ele o identifica e o distingue de outros modelos de arquivo. O ícone deve ter uma dimensão de 16x16 pixels. | |
</p><p>Nomeie o ícone como <tt>icon.png</tt> e adicione-o ao pacote <tt>org.myorg.additionalfiletemplates</tt>. | |
</p><p>A janela Projetos agora deve ter esta aparência: | |
</p><p align="left"><img border="1" src="../../images/tutorials/filetemplates/final-projects-window-60.png" alt="Janela Projetos finais."> | |
</p></ol></div> | |
<br /> | |
<!-- ===================================================================================== --> | |
<h2><a name="registering"></a>Registrando o modelo de arquivo</h2> | |
<p>Depois de ter criado o modelo de arquivo, você deverá registrá-lo no sistema de arquivos do sistema NetBeans. Esta é a finalidade do arquivo <tt>layer.xml</tt>.</p> | |
<ol><li>Adicione a seguinte entrada entre as marcas <tt><filesystem></tt> no arquivo <tt>layer.xml</tt>: | |
<pre class="examplecode"><folder name="Templates"> | |
<folder name="Other"> | |
<attr name="SystemFileSystem.localizingBundle" stringvalue="org.myorg.additionalfiletemplates.Bundle"/> | |
<file name="MyHTML.html" url="HTML.html"> | |
<attr name="template" boolvalue="true"/> | |
<attr name="SystemFileSystem.localizingBundle" stringvalue="org.myorg.additionalfiletemplates.Bundle"/> | |
<attr name="SystemFileSystem.icon" urlvalue="nbresloc:/org/myorg/additionalfiletemplates/icon.png"/> | |
<attr name="templateWizardURL" urlvalue="nbresloc:/org/myorg/additionalfiletemplates/Description.html"/> | |
<b><!--Use this line only if your template makes use of the FreeMarker template language:--></b> | |
<attr name="javax.script.ScriptEngine" stringvalue="freemarker"/> | |
</file> | |
</folder> | |
</folder></pre> | |
<p></p></li><li>Adicione o nome de exibição ao arquivo <tt>Bundle.properties</tt>: | |
<p></p><pre class="examplecode">Templates/Other/MyHTML.html=Meu arquivo HTML</pre> | |
</li></ol> | |
<br /> | |
<!-- ======================================================================================= --> | |
<h2><a name="building"></a>Construindo e instalando o módulo</h2> | |
<p>O IDE utiliza um script de construção Ant para construir e instalar seu módulo. O script de construção é criado quando o projeto de modulo é criado.</p> | |
<div class="indent"> | |
<h3 class="tutorial">Instalando o módulo do NetBeans</h3> | |
<p>Na janela Projetos, clique com o botão direito do mouse no projeto <tt>Modelos de arquivo adicionais</tt> e escolha Instalar/recarregar na plataforma de destino. </p> | |
<p>O módulo é construído e instalado no IDE ou na plataforma de destino. A plataforma ou IDE de destino se abre, de modo que você possa experimentar o novo módulo. O IDE ou a plataforma de destino padrão é a instalação usada pela instância atual do IDE de desenvolvimento. | |
</p><p><b class="notes">Observação:</b> ao executar o módulo, você usará um diretório de usuário de teste temporário, não o diretório de usuário do IDE de desenvolvimento. | |
</p><h3 class="tutorial">Usando o módulo do NetBeans</h3> | |
<ol> | |
<li>Escolha Arquivo > Novo projeto (Ctrl-Shift-N) e crie um novo projeto. | |
<p></p></li><li>Clique com o botão direito no projeto e escolha Novo > Outro. O assistente para Novo arquivo é aberto e exibe a nova categoria com seu novo tipo de arquivo. Ele deve ter a aparência semelhante a esta, embora seu ícone provavelmente seja diferente:</p> | |
<p><img border="1" src="../../images/tutorials/filetemplates/new-file-wizard-60.png" alt="Assistente para Novo arquivo."> | |
</p><p></p></li><li>Selecione o novo tipo de arquivo, clique em Próximo e crie um novo arquivo. Quando você clicar em Terminar, o Editor de código-fonte deverá exibir o modelo recém-criado. | |
</li></ol> | |
<h3 class="tutorial">Criando um binário de módulo compartilhável</h3> | |
<ol> | |
<li>Na janela Projetos, clique com o botão direito do mouse no projeto <tt>Modelos de arquivo adicionais</tt> e escolha Criar NBM. | |
<p>O arquivo NBM é criado e você pode visualizá-lo na janela Arquivos (Ctrl+-2): | |
</p><p><img border="1" src="../../images/tutorials/filetemplates/shareable-nbm-60.png" alt="NBM que pode ser compartilhado."> | |
</p></li><li>Disponibilize-o a outras pessoas através de, por exemplo, email. | |
</li></ol> | |
</div> | |
<!-- ===================================================================================== --> | |
<h2><a name="additional"></a>Fornecendo variáveis adicionais</h2> | |
<p>Como discutido anteriormente, é possível complementar as variáveis predefinidas, como ${user} e ${time}, com as suas próprias. Por exemplo, você pode definir o seu modelo da seguinte forma, se desejar passar uma variável representando uma lista de nomes: | |
</p><pre class="examplecode"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> | |
<html> | |
<head> | |
<title></title> | |
</head> | |
<body> | |
<#list names as oneName> | |
<b&gt${oneName}</b&gt | |
</#list> | |
</body> | |
</html></pre> | |
<p>Acima, a diretiva #list do FreeMarker itera por meio de uma variável chamada "names", com cada instância chamada "oneName". Cada valor da iteração é impresso no arquivo, entre marcas de negrito. O valor de "names" poderia vir de uma série de locais, geralmente do painel de um assistente, onde o usuário, neste caso, teria selecionado um conjunto de nomes de uma lista. | |
</p><p>Para habilitar a variável acima, ou seja, para iterar através de uma nova variável, consulte <a href="http://netbeans.dzone.com/news/freemarker-netbeans-ide-60-first-scenario">FreeMarker no NetBeans IDE 6.0: Primeiro cenário</a> e veja a discussão de <tt>DataObject.createFromTemplate(df, targetName, hashMap)</tt> nesta <a href="http://blogs.oracle.com/geertjan/entry/freemarker_baked_into_netbeans_ide1">entrada de blog</a>. | |
<br /> | |
<!-- ===================================================================================== --> | |
</p><h2><a name="license"></a>Fornecendo uma licença de projeto</h2> | |
<p>Um ponto ainda não discutido está relacionado à diretiva #assign do FreeMarker, que só é relevante se você estiver interessado em permitir que o usuário gere uma licença de projeto quando o arquivo for criado. Para atender às necessidades de licenciamento do usuário, você pode fornecer diretivas de licenciamento no modelo de arquivo. Depois, todos os arquivos no projeto do usuário serão criados com as diretivas de licenciamento fornecidas. | |
</p><p>Para compreender isto, realize as seguintes etapas: | |
</p><ol> | |
<li>Vá para o menu Ferramentas. Escolha Modelos. Abra o modelo Java | Classe Java no editor: | |
<p></p><p> | |
</p><p><img src="http://blogs.oracle.com/geertjan/resource/freemarker-in-nb-2.png" border="1"/> | |
</p><p></p></li><li>O modelo acima, e as ramificações de sua definição no FreeMarker, foram discutidos anteriormente. Entretanto, vamos analisar especificamente as quatro primeiras linhas: | |
<p></p><pre><#assign licenseFirst = "/*"> | |
<#assign licensePrefix = " * "> | |
<#assign licenseLast = " */"> | |
<#include "../Licenses/license-${project.license}.txt"></pre> | |
<p>Estas quatro linhas têm a ver com <i>licenciamento</i>. A última linha determina a licença que será usada, por projeto. As três primeiras determinam os caracteres na frente e atrás de cada linha da licença. Acima há quatro linhas para os arquivos de código-fonte Java. Aqui está o mesmo conjunto de definições que você encontrará no início do modelo de arquivo de propriedades: | |
</p><p></p><pre><#assign licensePrefix = "# "> | |
<#include "../Licenses/license-${project.license}.txt"></pre> | |
<p>A primeira linha informa que cada linha na licença terá como prefixo um "# ", em vez de um "*", que é o prefixo de arquivos de código-fonte Java (com "/*" para a primeira linha e " */" para a última linha). Para verificar isto, crie um arquivo de código-fonte Java e crie um arquivo de propriedades. Você verá uma licença em ambos os casos. Entretanto, os caracteres de prefixo e sufixo de cada linha são diferentes, devido às definições acima. | |
</p><p></p></li><li>Agora, vamos analisar a própria licença. Observe esta linha nos modelos acima: | |
<p></p><pre><#include "../Licenses/license-${project.license}.txt"></pre> | |
<p>Em particular, observe esta parte: | |
</p><p></p><pre>${project.license}</pre> | |
<p>Coloque-a, como uma chave, no arquivo <tt>nbproject/project.properties</tt> do aplicativo. Agora adicione um valor. Por exemplo: | |
</p><pre>project.license=apache</pre> | |
<p>Agora, observe o Gerenciador de modelos novamente, na pasta Licenças. Você verá alguns modelos nela. Crie um novo chamado "<tt>license-apache.txt</tt>". Por enquanto, você só pode copiar um existente e colá-lo na mesma categoria no Gerenciador de modelos. Depois, na próxima vez que você criar um arquivo definido por um modelo do FreeMarker que inclua esta linha: | |
</p><p></p><pre><#include "../Licenses/license-${project.license}.txt"></pre> | |
...você terá a licença especificada incorporada ao arquivo recém-criado. | |
</li></ol> | |
<p>Em resumo, o NetBeans IDE 6.0 permite que o usuário defina, por projeto, a licença que cada um dos arquivos deve exibir. Além disso, imagine se o usuário precisar criar um novo projeto com uma licença diferente. Supondo que o usuário tenha um conjunto de licenças definido no Gerenciador de modelos, o uso de uma nova licença é tão simples quanto adicionar uma chave ou um par de valores ao arquivo <tt>nbproject/project.properties</tt>. Isso só é possível agora graças ao suporte a FreeMarker no NetBeans IDE 6.0. Para mais leituras sobre licenciamento, especialmente os comentários ao final dele, consulte <a href="http://blogs.oracle.com/geertjan/date/20071126">esta entrada do blog</a>. | |
</p><p> | |
<br /> | |
<br> | |
</p><div class="feedback-box"><a href="https://netbeans.org/about/contact_form.html?to=3&subject=Feedback:%20NetBeans%206.0%20File%20Template%20Module%20Tutorial">Envie-nos seus comentários</a></div> | |
<br style="clear:both;" /> | |
<!-- ======================================================================================== --> | |
<h2><a name="nextsteps"></a>Próximas etapas</h2> | |
<p>Para obter mais informações sobre a criação e o desenvolvimento de módulos do NetBeans, consulte os seguintes recursos: | |
</p><ul> | |
<p></p><li><a href="https://netbeans.org/kb/trails/platform.html">Outros tutoriais relacionados</a></li> | |
<p></p><li><a href="https://netbeans.org/download/dev/javadoc/">Javadoc da API da NetBeans </a></li> | |
</ul> | |
<hr> | |
<!-- ======================================================================================== --> | |
<h2><a name="version"></a>Versionamento </h2> | |
<p> | |
<table width="76%" border="1"> | |
<tbody> | |
<tr> | |
<td> | |
<div align="left"><b>Versão</b></div> | |
</td> | |
<td> | |
<div align="left"><b>Data</b></div> | |
</td> | |
<td> | |
<div align="left"><b>Alterações</b></div> | |
</td> | |
</tr> | |
<tr> | |
<td> | |
1 | |
</td> | |
<td> | |
26 de junho de 2005 | |
</td> | |
<td> | |
Versão inicial | |
</td> | |
</tr> | |
<tr> | |
<td> | |
2 | |
</td> | |
<td> | |
28 de junho de 2005 | |
</td> | |
<td> | |
<ul> | |
<li>Marcas de negrito adicionadas ao arquivo descritor para mostrar que a caixa Descrição exibe marcas HTML. | |
</li><li>Atributos de classificação adicionados. | |
</li><li>Nomes de exibição movidos para Bundle.properties. | |
</li><li>Captura de tela alterada em "Usando o plug-in do NetBeans". | |
</li><li>".template" adicionado como extensão do arquivo "BrandedJavaClass" porque <tt>layer.xml</tt> procura um arquivo chamado "BrandedJavaClass.template". Além disso, a captura de tela da janela Projetos foi alterada no final da seção "Criando o modelo de arquivo" para refletir a extensão ".template". | |
</li></ul></td> | |
</tr> | |
<tr> | |
<td> | |
3 | |
</td> | |
<td> | |
2 de outubro de 2005 | |
</td> | |
<td> | |
<ul> | |
<li>Tutorial percorrido por completo com a última compilação. Várias alterações feitas, especialmente porque Modelos substitui a janela Opções em modelos. | |
</li><li>Adição do 2o e 3o parágrafos à introdução, para explicar que este tutorial não é necessário se você estiver criando um novo tipo de arquivo. | |
</li></ul></td> | |
</tr> | |
<tr> | |
<td> | |
4 | |
</td> | |
<td> | |
3 de outubro de 2005 | |
</td> | |
<td> | |
<ul> | |
<li>templateWizard[Iterator|URL] alterado em layer.xml para instanciar [Iterator|WizardURL] porque templateWizard[Iterator|URL] ficará obsoleto.</li></ul> | |
</td> | |
</tr> | |
<tr> | |
<td> | |
5 | |
</td> | |
<td> | |
16 de março de 2006 | |
</td> | |
<td> | |
<ul> | |
<li>Tutorial percorrido por completo, espaço entre linhas ajustado um pouco, tudo funcionando perfeitamente. | |
</li><li>É preciso substituir as capturas de tela porque os ícones estão um pouco diferentes. | |
</li><li>É preciso adicionar um ícone ao documento, não apenas fazer referência à localização. | |
</li><li>É preciso mostrar como vários modelos de arquivo podem ser criados ao mesmo tempo no assistente para Novo arquivo. </li></ul> | |
</td> | |
</tr> | |
<tr> | |
<td> | |
6 | |
</td> | |
<td> | |
12 de setembro de 2006 | |
</td> | |
<td> | |
<ul> | |
<li>Tutorial percorrido por completo em NetBeans IDE 5.5 Beta 2. | |
</li><li>Sem problemas, funcionou exatamente como descrito. | |
</li><li>Algumas capturas de tela atualizadas. | |
</li><li>Recuos corrigidos no código. </li></ul> | |
</td> | |
</tr> | |
<tr> | |
<td> | |
7 | |
</td> | |
<td> | |
9 de junho de 2007 | |
</td> | |
<td> | |
Início da atualização para o NetBeans 6. | |
</td> | |
</tr> | |
<tr> | |
<td> | |
8 | |
</td> | |
<td> | |
16 de fevereiro de 2008 | |
</td> | |
<td> | |
Início da migração das informações de <a href="http://blogs.oracle.com/geertjan/entry/freemarker_baked_into_netbeans_ide1">esta entrada de blog</a>, <a href="http://blogs.oracle.com/geertjan/entry/freemarker_baked_into_netbeans_ide2">esta entrada de blog</a> e <a href="http://blogs.oracle.com/geertjan/date/20071126">esta entrada de blog</a> e <a href="http://netbeans.dzone.com/news/freemarker-netbeans-ide-60-first-scenario">este artigo</a> para este tutorial. | |
</td> | |
</tr> | |
<tr> | |
<td> | |
9 | |
</td> | |
<td> | |
15 de abril de 2008 | |
</td> | |
<td> | |
Estilos (emblema, índice analítico, tabela de software necessário) atualizados para o novo formato. | |
</td> | |
</tr> | |
</tbody> | |
</table> | |
</p></body> | |
</html> |