设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13654|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # a0 F- r9 e( z" o3 O+ J( J- r
0 m3 j) _9 L1 l8 A7 i; K9 n3 ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) e1 f- H# ]! b/ M$ z7 t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- a/ F) B; e: J& a% U  ~8 Nswarm.SignatureNotFoundException7 t; L6 W9 w/ l) ~% \
        at swarm.Selector.<init>(Selector.java:76)" I8 s2 ]# d1 j3 j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( d4 J, c$ H9 Y/ z/ f  A3 P        at ActionGroupDemo.main(ActionGroupDemo.java:67)% _5 j# @7 M9 n3 b7 B

- [- y: }- \6 F
* o/ g' s; _" h7 F7 q, B0 Rimport swarm.objectbase.SwarmImpl;
9 ?' d; m% U0 _% ]# v. \0 }import swarm.objectbase.Swarm;
3 ^2 l- h1 F) i/ r/ e, Eimport swarm.activity.ScheduleImpl;
( S& i, \3 K. j( Eimport swarm.activity.Activity;
$ x7 h# V0 s8 S+ S5 ^" A4 Vimport swarm.activity.ActionGroupImpl;9 G6 K9 C  ^' @0 ?& f! o$ }
import swarm.collections.ListImpl;! H+ q( I+ B+ v8 s+ c) _
import swarm.defobj.Zone;
/ m1 w3 i* O$ b3 U8 _+ R& @import swarm.Globals;' D/ ^# m6 U- g
import swarm.Selector;
( l3 z4 k  E, a0 s. Zimport swarm.activity.ActionGroup; ! }0 z$ Q1 W9 [
class Agent {/ p) \( f; {" G* ?, D
        char id;
& a! S' ^' k* [9 B$ s3 M# x$ g+ W3 W% A7 @% R0 j: s
        Agent(char id) {, X" i1 h4 O/ \: A! E  E
                this.id = id;% e0 G$ a8 O# h" k$ h- d6 R" X
        }+ H9 M1 k- P6 v  x. b9 R! Z% ?
: e# X+ \3 n1 z0 i9 T  H/ s3 v
        public void agentStep() {
, C% b6 \& s$ Q3 y' H6 `' z$ O                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 V& P! f( D$ t% X/ z        }( e( |+ g; }7 t& q" y6 m0 _
}
+ A, F# s. ?& \7 a
( t( K* L" G2 d" i" {: npublic class ActionGroupDemo extends SwarmImpl {$ W! t/ r% y+ e/ f$ o' J- J
        ScheduleImpl schedule;  F" D: w; @! j  ?5 w
        ActionGroupImpl actionGroup;
2 H) P% b5 e% K& ^) U        ListImpl list;1 Q; h9 A. r3 g1 V+ [
        char Id = 'a';
! S2 S/ r# ~5 T1 u/ D! ~, j
7 i' k: Z1 [' H" O" _3 X        ActionGroupDemo(Zone aZone) {6 q2 y/ L$ R  N# e( C2 b
                super(aZone);9 G5 b8 a, m3 b1 @
                list = new ListImpl(aZone);1 \7 C9 l/ `$ n) V
                swarmSetp();# c# p/ C; c% I
                actionGroup = new ActionGroupImpl(aZone);! I& s, \5 W, K$ S
                schedule = new ScheduleImpl(aZone);
9 v- I" e- M; e- V                try {
" d& e. M2 p0 |5 d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: }4 x+ {# y! K) X% y5 J! @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& b  k7 H- o! ]* A( _3 Z                        & P; ]) h1 _  g6 h3 C; j5 M( _
                        actionGroup.createActionForEach$message(list, agentSel);
$ ^0 }! s2 X9 V3 D$ a0 q                        actionGroup.createActionTo$message(this, swarmSel);4 t; v3 Z8 s1 @3 R$ g
                        schedule.at$createAction(0, actionGroup);
+ c- l0 g! l: r, c) [                        schedule.at$createAction(1, actionGroup);" U! l4 ]( c6 j( N' C# n
                        schedule.at$createAction(2, actionGroup);
4 o9 ?$ E6 n2 K3 }4 S3 Z& `- j; P
                } catch (Exception e) {1 _. h, h% s/ f$ J
                        e.printStackTrace(System.err);
6 p7 x) R4 O$ W) s; `/ u1 Y( P                        //System.out.println(e);
# r% o# A9 ^$ _( R                        System.exit(1);  o8 X  t8 v; @. S7 {# O
                }& p% g6 w* v. y0 G/ z
1 r# i) D3 G9 z+ a/ C# O

' R4 R+ f. w/ ?* T        }: Y' G% g' a# X6 t

8 w. s( ]8 G1 o        private void swarmSetp() {0 t1 s- N/ q! @! N5 t( C$ J4 o
                list.addLast(new Agent(Id));
2 m. w2 s5 a1 }. P% p# z/ G                Id++;! \! P% D6 U; J0 b3 K* Z5 j8 P5 L! F
        }
5 ?1 \7 S0 U9 f  R+ g! E7 b8 J: a# S+ W  m
        public Activity activateIn(Swarm context) {0 {6 F5 @( R* n) x
                super.activateIn(context);
! R( b# c9 P) e/ ~  v                schedule.activateIn(this);- Q. {- a* S" x: V& h0 {' k' `% [
                return getActivity();
  a; ?* R; z9 J, r        }# ~/ {$ \+ j: h, c% A
  g- _) ~& _0 J1 J/ g
        public static void main(String[] args) {, i% I7 k9 I8 t
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) E# G1 z5 w& R  w0 b5 \* `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 b" v! ~3 S( F& h                swarms.buildObjects();
; d8 @; Z3 S& Z( y) P1 k                swarms.buildActions();0 ^# Z! J( b; s9 b$ V/ ]
                swarms.activateIn(null).run();
" ~8 \" }4 u$ a4 ?0 m) b) o        }
( t9 I+ c% D5 ]; o# T
& O( ~' j8 v+ s' {2 A& p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-13 17:50 , Processed in 0.016226 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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