设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5301|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 e; `+ b( P9 p% }. |! W: N: S2 ~1 {7 I( q8 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 ]4 y( H  V5 j5 k" _; u* N# c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 k1 e# q# W$ D; n9 P8 J/ w, v6 Gswarm.SignatureNotFoundException
$ F5 R& F9 B1 C( x8 w  W        at swarm.Selector.<init>(Selector.java:76)
. D. x9 y; u2 p3 N0 }+ I        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ d' N( V. s; y! T
        at ActionGroupDemo.main(ActionGroupDemo.java:67). E* }( U: b" F: |

/ R3 W6 S' A  y* D1 P( X1 }) O: z2 i& Y; f3 d# k7 g
import swarm.objectbase.SwarmImpl;
& Y& y7 o5 s$ e) Oimport swarm.objectbase.Swarm;' O) A4 H' T8 R' u# b
import swarm.activity.ScheduleImpl;
0 D# `& J' n/ Z$ g3 {import swarm.activity.Activity;' h/ i) u' G4 Y& w6 _; B
import swarm.activity.ActionGroupImpl;
2 K9 N; C: u, `! e: N  j3 kimport swarm.collections.ListImpl;6 a& q0 _9 P' c, s
import swarm.defobj.Zone;
8 \: X8 z2 {" E0 L" ^# s  |, I" eimport swarm.Globals;
; U0 J# s6 x3 C- C9 x( himport swarm.Selector;/ |2 b- s$ K1 z# e$ u
import swarm.activity.ActionGroup;
( L9 W+ w' \, X6 o+ Tclass Agent {& p: o& X# b0 P% f; |/ R, M: G
        char id;
7 t/ }) ?: D3 e. M" |: K' R% t; s! I) v; L$ h; @
        Agent(char id) {
  y4 y9 W# w: B/ c                this.id = id;
6 H$ U8 K1 q) N* Y) l" E3 B        }8 p4 O* e* l. K: f! j% P+ N
7 z9 J  k$ K- G# v% G* _
        public void agentStep() {# X3 t- N& I) F0 T0 z
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) P" H  _" f: m9 C        }
+ U, @; t, F1 `, e4 ]: n}
/ X6 g0 ^! R& T0 l1 N$ C: t0 g- i# R! ^5 A
public class ActionGroupDemo extends SwarmImpl {! e8 [4 u3 d! F( k# U+ h9 F
        ScheduleImpl schedule;
8 e, b. z( {. B% w/ K( k' Q        ActionGroupImpl actionGroup;! ?0 r) X; H; }+ z# g
        ListImpl list;3 s( b# Q7 r/ C: X  I) Z& e" W3 W
        char Id = 'a';. q; j! O  E$ X5 H  O
) x% [$ u5 u7 a/ H5 p; a
        ActionGroupDemo(Zone aZone) {
7 q0 d( J+ \4 ]                super(aZone);
7 G4 \1 d1 F& p                list = new ListImpl(aZone);
7 n2 x& @# i  Y+ v( n3 D) J# a" \                swarmSetp();5 \6 N6 V; g5 x9 V3 d8 m( G% A- E7 K6 |
                actionGroup = new ActionGroupImpl(aZone);
2 O0 Y5 R1 r7 Q, p2 s" H                schedule = new ScheduleImpl(aZone);
7 P/ s( d* j( y- i                try {6 e+ d. L9 V! j
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* W( i% O8 M' D9 d( Z5 E                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' x% A* ^! I/ z% m5 c* a                        6 x3 E( S1 V, q. G% C0 h* G& P
                        actionGroup.createActionForEach$message(list, agentSel);
! [' T7 ]- Z' X% Q" @/ X$ H                        actionGroup.createActionTo$message(this, swarmSel);
  S! t- a$ G$ q* b# o( l                        schedule.at$createAction(0, actionGroup);
, O: H1 A. ^. K                        schedule.at$createAction(1, actionGroup);
0 I$ n( S7 k; y9 g" k( M                        schedule.at$createAction(2, actionGroup);# w" X, F" M7 L- ~- C0 J+ L' ~
3 c; T# L/ a" u% B; |$ d* C/ J1 U
                } catch (Exception e) {$ Z( v. M; u/ f$ I" X7 B% x
                        e.printStackTrace(System.err);4 z  Q  y2 ~8 C4 d( P9 J- l
                        //System.out.println(e);
% T2 R' ~+ x: x" s                        System.exit(1);( N- t( o# q, k% w9 l
                }
3 Q% j$ ^. l' j# K7 l+ U1 _. y% b; t9 h" I: q) E4 x

, h7 X! H4 i* h/ H/ m5 K        }
/ F+ W- q! T% u6 `
. ~0 S% v& V+ ~/ ^; ]2 O7 _        private void swarmSetp() {4 w8 c( w2 M/ T# r
                list.addLast(new Agent(Id));
/ \1 Q/ f: V+ h7 X% ^                Id++;+ Q* ]& _* o* R3 h3 |
        }
( v! l5 Q) B! o) C  j; V: m  D$ b. U) B" k- m5 r+ P
        public Activity activateIn(Swarm context) {4 K6 P3 L6 H+ m% [  T
                super.activateIn(context);$ J  F: c+ E: }7 z; s  w6 C& N
                schedule.activateIn(this);
. D& p7 Z2 Z6 F8 j: J! I                return getActivity();: b' w9 \  `4 g2 Z1 b0 K
        }
2 Q' M8 f' b$ a. }' j- f2 c# _" e2 E4 i# B6 F, f
        public static void main(String[] args) {$ x0 f9 r- B- m: f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 [  \6 l+ Q( L1 i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; X' n3 w1 [" k' _! C5 v; F* _; Z                swarms.buildObjects();
" S$ ~; {$ Y3 [6 @$ }                swarms.buildActions();+ z3 P- w! q  m6 Y8 d$ _1 Y
                swarms.activateIn(null).run();" y, w; E2 W5 b; S
        }9 P2 I6 F' Z, j  P
. L- s! f/ U( F+ ~0 U8 W1 G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-3 00:43 , Processed in 0.018993 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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