设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13431|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! Z: R5 n6 x4 B+ q/ {9 p

3 C- W  h$ K# K. T7 l. l' R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 }0 U6 I3 u2 b4 a/ ]% V7 ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# j% u4 m1 L4 {( Q* f$ Tswarm.SignatureNotFoundException+ [! m( ~, i0 q: [
        at swarm.Selector.<init>(Selector.java:76)6 i; h: u% B" Q' P% X) q. z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 h' @; I8 f% p8 O
        at ActionGroupDemo.main(ActionGroupDemo.java:67). D7 K) E+ _" E. z2 P/ M& O# b; S) G
7 X3 O9 s; S2 {0 y! b

0 c$ Z; ?2 h2 ]) X$ P  J. g% gimport swarm.objectbase.SwarmImpl;
% d* E' o8 B( W3 Iimport swarm.objectbase.Swarm;4 L% x, X/ u. S* a! R* V
import swarm.activity.ScheduleImpl;
4 S; r& j4 Z% D. d+ P7 G* Cimport swarm.activity.Activity;# D+ K0 g: E! a+ G+ G
import swarm.activity.ActionGroupImpl;# {, H* m+ @/ |6 X+ S( P6 @& E* O
import swarm.collections.ListImpl;7 ], ~3 G/ F7 ]' @/ W& @1 t3 c1 I  F
import swarm.defobj.Zone; 6 @  i# I2 n1 p8 c
import swarm.Globals;
* I; {' E/ D2 ]2 `- Oimport swarm.Selector;
3 b8 C( q9 W4 S, m; G9 S% Dimport swarm.activity.ActionGroup; 6 I. c- C3 F$ Q: M3 V! t- z
class Agent {
' z% y6 Q. S0 j, @  n8 [        char id;4 N% P. e  y( b  @
. \# w+ v" m* Y6 W
        Agent(char id) {
0 z4 q. H  f6 Q                this.id = id;5 E4 ]* |/ H) X# O. w
        }2 G. P+ ]/ p- l4 _: c+ ~( @7 N
1 u  }% l, M! `1 z% `
        public void agentStep() {% w. A* y- i: `: R) c" f# N
                System.out.println(id + ":" + Globals.env.getCurrentTime());9 G$ N1 |* ?3 v9 x, R
        }
0 O9 n* a  }/ p( ^}
: H+ j$ Y/ H% l! |% ^# x2 J- P
public class ActionGroupDemo extends SwarmImpl {
& V! b  U+ N" F, a        ScheduleImpl schedule;
5 A- i$ J2 v3 Z' N) N        ActionGroupImpl actionGroup;( a( ^& T6 |* c
        ListImpl list;% M1 m( Y. k7 S" [) ?* y2 }  _& ], R% V
        char Id = 'a';( E, Q, i+ {8 l5 y& }5 t4 q# \

, T$ C7 W# x0 b/ G& q        ActionGroupDemo(Zone aZone) {1 j/ m' W) [& n3 K7 g  Q, l
                super(aZone);  `8 Z" s4 d+ a/ R+ {2 v
                list = new ListImpl(aZone);5 u, c  I' G2 g
                swarmSetp();+ ~& B' d# [3 H- L' i
                actionGroup = new ActionGroupImpl(aZone);
+ \! L9 E2 [  }+ h; J' u  s                schedule = new ScheduleImpl(aZone);
* G3 ]  j) h% ?' Y8 c                try {
: \( s; P2 G5 ]  g8 E1 m) Q) {                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 `4 q0 l7 L% K7 i' p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 u1 _* v' i# b7 Y
                        
" N1 n8 O# w9 ]  u. p+ M1 W5 G* t8 S                        actionGroup.createActionForEach$message(list, agentSel);& {* X9 P* K, b- |% [
                        actionGroup.createActionTo$message(this, swarmSel);
7 _! E6 P% m# C3 {" i; @                        schedule.at$createAction(0, actionGroup);, j* D/ D/ s8 j0 ^& R$ f
                        schedule.at$createAction(1, actionGroup);
+ s% A; s6 L; s! @$ ~' y% L8 w! C                        schedule.at$createAction(2, actionGroup);2 I0 R" o7 H9 ]$ Y4 z- Y) x4 \1 @% y

5 g* q- N3 X3 F# M                } catch (Exception e) {; x7 N! _) ^4 k+ g0 ]9 l1 ^. S
                        e.printStackTrace(System.err);; Y$ h' L2 B) ^
                        //System.out.println(e);
2 |! G* I8 H5 e/ P7 c4 M2 P: E9 O* {                        System.exit(1);
" z7 Z# n8 H5 `# _' O5 {$ _                }
' e3 C; [; j2 m2 R+ D5 U; j; Z- {
) p! p/ t. P. f8 ]$ Q6 V& |( w9 y' K, V, S% T% ^' P5 C; z/ Q
        }
" Y: }+ @* I% D& ^+ O4 Q! R  X8 S2 B8 K
        private void swarmSetp() {: T# N2 v  g* R3 n' _
                list.addLast(new Agent(Id));" G5 l, C# p9 L+ {5 O' e
                Id++;
/ G6 e; |+ \; }* R! L        }
. r" q+ F: O/ g, G6 t; k
# q4 E  n8 a3 b5 ?        public Activity activateIn(Swarm context) {
3 t9 d/ c: I) @/ y( l7 e                super.activateIn(context);1 ]" `( X3 |3 w' y/ v% d4 Q5 H4 ?
                schedule.activateIn(this);& w- v# S2 \5 t+ `4 f% x
                return getActivity();
4 d% e5 A: D$ l- I' V+ H1 t        }
+ ?5 j" A# L" R* v- d% G3 `% N
* `) B2 B5 ]: W* n4 c        public static void main(String[] args) {. Q: `$ Q4 D* \' }* d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# V! t8 H1 {4 F" w+ A- F4 B7 ^7 w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ ^# z) g: u; N: Z                swarms.buildObjects();
) {/ ?4 w; n+ P  W( W4 p2 J7 f                swarms.buildActions();$ ]: n% M8 X0 T( W* B' y8 m
                swarms.activateIn(null).run();
2 E- _8 c) \0 p        }
% H, T) X; Q6 P7 \& b' C+ ?: m% g0 P1 p8 a6 M
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-6 22:05 , Processed in 0.019668 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表