设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12721|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 `- l- W$ D$ k6 Z2 K3 C

& _) W; G- ?/ V2 q/ w/ N% R; r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 d' l8 p% C/ N; U8 j7 K3 B9 p: X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 t8 a' m4 p3 v  Fswarm.SignatureNotFoundException
  L& f( J# q* c        at swarm.Selector.<init>(Selector.java:76)
% o, l6 K7 p3 v        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. S. J$ a- E1 F. f" [8 [        at ActionGroupDemo.main(ActionGroupDemo.java:67)# H/ I. k% c' {7 U) s4 ]7 i' a
, X1 S4 c( b& l
' ~# K4 L  C+ D! h  F- W" N+ I2 X
import swarm.objectbase.SwarmImpl;: X7 k- F, k2 `$ V. f, |' T+ q$ Y
import swarm.objectbase.Swarm;
4 I# U7 G& ^2 E) w4 S# N/ Simport swarm.activity.ScheduleImpl;" G/ K# J" @$ W7 P- ?
import swarm.activity.Activity;
. V1 y  O" T1 [- t2 P* K6 w3 Wimport swarm.activity.ActionGroupImpl;- m3 O2 R9 `1 {2 M
import swarm.collections.ListImpl;
% d( ~! G# c; R4 J4 C' g9 cimport swarm.defobj.Zone; ' ?7 q$ L6 D8 B8 B3 k" ?
import swarm.Globals;
) X0 Q- }: g0 Wimport swarm.Selector;, D( J7 O% i2 J4 a$ C
import swarm.activity.ActionGroup;
1 X0 X' H  T) v- Iclass Agent {  k1 F6 O. o* P' N, N
        char id;
: Q" [  K/ _" w3 m/ \
' ~8 Q! s0 W& U1 f9 k        Agent(char id) {
3 I& b8 i" o7 T, q  ?, A7 y                this.id = id;
5 z  I0 u9 j  B9 m" t; V7 I$ _        }
1 p5 t. u9 k, E; ]5 y$ @* p. l0 G# y# L2 X+ j9 F9 O
        public void agentStep() {
8 x* D5 t$ b* G, d% Q                System.out.println(id + ":" + Globals.env.getCurrentTime());( _- ?7 F4 p; }7 U+ y
        }. E" R4 N0 R; o4 G
}% x4 _! U8 Y. \: |1 e
4 a9 e7 F3 |9 o
public class ActionGroupDemo extends SwarmImpl {
' A: _0 ]1 j7 a        ScheduleImpl schedule;+ |2 U$ T* v2 T* _: j2 D
        ActionGroupImpl actionGroup;
/ c; u# D# }) B        ListImpl list;: G6 }' c$ e3 w3 a$ S: Z
        char Id = 'a';$ u  B- e: w, D, Y, B
+ V7 G7 G$ F2 J+ f6 `( J# v
        ActionGroupDemo(Zone aZone) {  K+ Q6 j; ^% S5 n& T/ v
                super(aZone);
, j# d2 c7 h7 u                list = new ListImpl(aZone);
$ R5 c" a% ~, c6 x                swarmSetp();( ?2 x) z9 Z- c, y5 f2 ~( I8 V' G
                actionGroup = new ActionGroupImpl(aZone);
" @* O% z3 h% c9 f0 a                schedule = new ScheduleImpl(aZone);& h, D4 j! a, a/ p. E6 [( d
                try {0 ^. D" ]: [- D. x% v) o$ c
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 v: P8 ~( `* V- R8 \6 z* f0 [
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' ^. C( [8 L5 O* l
                        
' J# w# H. C3 B1 S9 s                        actionGroup.createActionForEach$message(list, agentSel);+ O* k, d( T) _9 v. }# b
                        actionGroup.createActionTo$message(this, swarmSel);
( G9 O( \4 q. _) a                        schedule.at$createAction(0, actionGroup);: h4 F" _* Z8 g2 q1 c" y
                        schedule.at$createAction(1, actionGroup);
( U# c. C% d4 [, ^                        schedule.at$createAction(2, actionGroup);
% D+ D: `) d2 L* @0 M; T: E9 n2 X7 f, ~6 z
                } catch (Exception e) {7 ^, x* \/ O7 O+ H* N
                        e.printStackTrace(System.err);2 u  a! ]1 {  p9 x% t. N
                        //System.out.println(e);
+ ^$ x7 W& r+ o. t! u- W0 j                        System.exit(1);/ j1 T# |( J3 R0 ~) B+ a
                }% L6 q, V) R+ u

; r3 X9 f# ~, n; O: W. o8 H* x& C; R, n2 C1 u5 p
        }  [- o$ f# @9 x% N; a- q2 n

* ~" m8 [  k) p3 ?+ R' i* Q0 W, D        private void swarmSetp() {
$ i$ P4 k+ M: ]                list.addLast(new Agent(Id));
# Y" d/ F5 {: M; B  B6 R7 |% U/ z                Id++;, `) b( A/ j, S+ V% O
        }& L3 z1 J) a1 s7 |$ p7 y; V
: ~6 t' K, |  y) @9 t/ U# D
        public Activity activateIn(Swarm context) {
4 j" f7 P! ^' u1 k8 L                super.activateIn(context);$ A: ?& L8 P& K% Z- r
                schedule.activateIn(this);" I5 u3 U2 `1 T5 n9 X: [
                return getActivity();* z* X; x% h( k  t4 z- G
        }
( e* j5 @9 z  d! A, Y% B4 R) X8 M5 D2 x3 W
        public static void main(String[] args) {
7 |# K" z, a+ k' k5 x$ T0 o                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 q( F( J# X. Z4 f5 l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ `+ o) t. k" `( ?: n, g# k' q
                swarms.buildObjects();
/ u2 D( ~- t9 p3 N) F  h                swarms.buildActions();
( d$ y1 p: v0 Z2 t3 e1 I$ T& G                swarms.activateIn(null).run();; f8 a) h4 p7 |( K% e. i
        }
, @3 [8 G, P: x7 l' G$ G6 T4 v% @1 }( E4 D  N5 P" D( W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-17 05:23 , Processed in 0.018406 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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