设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8819|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 O9 W1 {- ?7 I3 s1 B' t) V

0 g4 X2 ?5 j8 e' F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% m3 a7 |. R8 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 b0 l, t6 T( z# I
swarm.SignatureNotFoundException- A$ A9 d, r" C- q, O
        at swarm.Selector.<init>(Selector.java:76)
; y* Z" ?. _" M3 Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 E5 v, G( o0 U* ?3 H. l$ a
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 _, [4 L# J! _" R  s

  v( w0 W1 h6 k5 C$ p/ }' w5 N9 r  i8 I+ }/ L# u
import swarm.objectbase.SwarmImpl;. ?0 w1 W9 r( ^1 Y5 @2 q
import swarm.objectbase.Swarm;. n* ^$ H2 S/ o2 ^2 b& a8 |
import swarm.activity.ScheduleImpl;
2 X+ U( b: F, z( C& Mimport swarm.activity.Activity;
0 e+ H0 I# k2 Iimport swarm.activity.ActionGroupImpl;5 m/ b. c, ~; R2 H& ]4 D2 g
import swarm.collections.ListImpl;
5 [8 n! V' `4 z0 q% @, Kimport swarm.defobj.Zone;
* Q1 @3 ]6 l3 R% C1 m7 Mimport swarm.Globals;/ X. v+ b  n- Z+ ?( @
import swarm.Selector;& W, t6 |+ f( }& E6 E
import swarm.activity.ActionGroup;
1 v/ s* @7 ^3 kclass Agent {
0 V  u, O6 D0 }! c        char id;" o- @0 s/ H) {! q. \' `1 K/ ^! l8 |
/ N# x: _. q3 f# G: X
        Agent(char id) {
# C" f$ \* @5 o+ R9 U! }" `4 e                this.id = id;
8 ?, H' C! ]) P7 p0 H1 g) B        }
* b! s+ O$ G8 ?; T2 z& }) v$ p9 y7 K' t" Q4 Y/ I' T4 x
        public void agentStep() {6 b4 @: y7 W/ I% c5 T) _- M
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 ^6 n/ Z8 N3 b* M
        }
) I. W5 T4 w) z8 p  o+ Y, }$ `: \: f* k}
9 b2 {: P" g* D& E# i% `
  s, y4 F6 l4 u) S6 Q% K! }public class ActionGroupDemo extends SwarmImpl {
4 o% u0 g" y$ ]( h* O        ScheduleImpl schedule;+ g! t+ l" _# B3 D8 s5 x5 R
        ActionGroupImpl actionGroup;! T7 y$ Y+ O3 [' f- |
        ListImpl list;  c6 V. P5 E7 W
        char Id = 'a';
) l$ }# t' |$ z  \! G" |8 j; {( [* a& Y5 Z
        ActionGroupDemo(Zone aZone) {
: ?* ]6 d$ h1 J# V8 n+ z6 m2 E( x                super(aZone);
6 U: o+ @4 s( W2 z: N                list = new ListImpl(aZone);
8 z" v8 R1 L1 c" i. o" q! X                swarmSetp();/ g/ Y: n$ i  F; }- c1 T
                actionGroup = new ActionGroupImpl(aZone);
$ K3 m+ F/ |' W, r                schedule = new ScheduleImpl(aZone);+ R& H% {8 R) Y. q2 {
                try {' p  V. O% E; X& `
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 ]1 X+ s( [. }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 a8 G$ d- u, H' i; z
                        
- |( k& P5 u! @& @+ b7 I                        actionGroup.createActionForEach$message(list, agentSel);
6 [  j5 b" Z2 Z+ ^) Q$ i: g- N                        actionGroup.createActionTo$message(this, swarmSel);
. X8 Q, ]5 k' f/ }5 k* o                        schedule.at$createAction(0, actionGroup);8 H" j) w" F* m
                        schedule.at$createAction(1, actionGroup);- d: D" K: u' x
                        schedule.at$createAction(2, actionGroup);( C9 t) e( S' U! I
1 ~9 v4 i' K% O5 s, `2 `
                } catch (Exception e) {
" s3 b* r# \4 V                        e.printStackTrace(System.err);
# \+ v$ U# J1 \* k7 `8 W                        //System.out.println(e);
. E) P$ r% L5 g$ l) ]& H; j+ w7 a                        System.exit(1);
( i: H/ t: Q, [/ l" E! J                }9 y* I7 @+ ^* @9 S

7 N/ u, ?6 q# p9 M( W9 P1 h% H6 v% T) z  v$ Y6 F9 f
        }
) m2 H' F! k! s& ?& d( W$ H1 _8 P# v
+ Q1 W$ S9 H% Z' x2 }        private void swarmSetp() {
2 ~% }/ a8 B4 P% O( W6 w2 ^                list.addLast(new Agent(Id));* c5 K  Q3 I5 M/ i. H. g
                Id++;; N1 q" \1 F) I; T& H$ r
        }
  j) R; s. M. C- X/ Q5 w8 `
+ X* u( q% H0 T  j        public Activity activateIn(Swarm context) {
9 ~9 W" m( H9 w, U' ]                super.activateIn(context);* `9 L- }! [6 V9 E4 p$ n, K
                schedule.activateIn(this);
( C# r1 T+ d) V0 d                return getActivity();9 o; q, o* W9 F/ O3 e! p& G
        }+ D, i1 X/ Q; V7 L9 q! }- d
. Z, Y; P; a, }- |. |) R& t. n
        public static void main(String[] args) {
0 |  m2 R9 n6 U9 k9 j                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 ~* G+ U$ v% K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! k3 z1 d8 b/ J
                swarms.buildObjects();' }/ i# ]( ]0 M1 z
                swarms.buildActions();
9 ?; z7 r2 Y% ]" G                swarms.activateIn(null).run();% V: Q& G; ]) C! b
        }# v- h: _) H9 R7 I* H

* h- ~8 B; ]% S) H. Z- l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-23 18:10 , Processed in 0.019731 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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