设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8758|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) j' G. U. M7 q) d8 V( t# J. b% ~5 w; Z3 H7 _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ R& \2 M. N, n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
  ?  z  i+ n! \8 Q! U% nswarm.SignatureNotFoundException
3 @) s& V4 R8 w3 E/ t0 b1 T        at swarm.Selector.<init>(Selector.java:76)
* {, d- ?  b9 ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' u" ]0 r2 G: G, h4 f- M; a  g" s
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! Z- w2 p  N) i( S$ P* J7 O6 _9 `
0 G7 z5 Q% c/ d5 h2 l( n$ t& f; Q% g. a! l7 [+ |: S
import swarm.objectbase.SwarmImpl;& }5 L9 g7 P; D* f. f* W; H
import swarm.objectbase.Swarm;
8 ^9 F2 K! g4 ~. I$ Timport swarm.activity.ScheduleImpl;
2 x% ?9 F  I0 t" o; q4 M  G/ Mimport swarm.activity.Activity;) N# v( q" n, M9 ]* h
import swarm.activity.ActionGroupImpl;
% y2 ^, Z# M8 D4 @* ]% h. ?& \& |import swarm.collections.ListImpl;
' w+ i+ f9 }* Y8 Bimport swarm.defobj.Zone; 7 M- L+ A, I' V# N, A
import swarm.Globals;3 x, w* y( S7 z+ q
import swarm.Selector;
" x/ g9 B" K" P# X7 e6 J4 @import swarm.activity.ActionGroup;
0 |% g8 X* h. v! T$ R+ _class Agent {3 G" b4 H0 W* N# Z! w' v& v
        char id;) I, X1 P& q% ~) O; p  L' u

' E3 L& `- q: T/ X        Agent(char id) {. u0 H6 J0 Q6 \1 V  C
                this.id = id;
& j; r- U1 ^# B: ^5 U        }2 F, G. d5 f# u, q
9 m7 t8 v  p$ Q, h  b, D
        public void agentStep() {
% ~7 \' R' v( I. c                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ s3 E1 D. L" p2 q. O9 i        }
+ V4 K  |0 H# X}
! B2 ?' J+ G* t" y% Q& u" b8 i% F, k5 U; V3 T2 F! n
public class ActionGroupDemo extends SwarmImpl {1 K2 F+ u2 G4 ]- e4 L8 ^
        ScheduleImpl schedule;, p2 P# M: R* F
        ActionGroupImpl actionGroup;2 l& j4 ^5 y4 L
        ListImpl list;
, }' T7 Q- e1 m. C8 b3 j        char Id = 'a';
" H7 A4 U" c! V  I4 o  F4 h3 a( ^+ Z- f/ N, s
        ActionGroupDemo(Zone aZone) {
* i; ?: g. q9 K7 v: G$ o                super(aZone);
- W" q  H+ r* M; @$ G                list = new ListImpl(aZone);
5 K8 S1 i2 B5 C: H                swarmSetp();$ B* [) k7 C8 g# }, m0 q
                actionGroup = new ActionGroupImpl(aZone);
2 S4 X+ V- u0 u# a% L' H1 A                schedule = new ScheduleImpl(aZone);7 Y  }& w. M  i4 ?5 h. c+ g
                try {+ G- B% j+ ?2 W1 H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ P3 g0 L3 r3 y+ Z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ H* E5 c6 P  R8 J- C+ H& ~6 F; V# f
                        3 x) O6 u. I4 ]( |
                        actionGroup.createActionForEach$message(list, agentSel);
2 b5 t5 j6 c( M5 l0 D" G                        actionGroup.createActionTo$message(this, swarmSel);9 R' h; \/ e! X% P% j
                        schedule.at$createAction(0, actionGroup);! v9 X1 B% F3 T/ |
                        schedule.at$createAction(1, actionGroup);' t/ k" W9 H; T  D* A4 C) @7 ~0 K: N
                        schedule.at$createAction(2, actionGroup);
0 G4 m1 i4 `+ T0 I0 Y
3 I3 W4 v6 Y" A% F                } catch (Exception e) {, ~' C+ v5 K: d# q
                        e.printStackTrace(System.err);) \$ t9 ?1 w7 O4 v' G% Y% P
                        //System.out.println(e);2 N" `* M+ v6 [' a" n! u0 Y
                        System.exit(1);! I" o' W6 I- t; e0 ^5 ]0 f
                }5 ~* W1 J# `* P0 r
' P3 b2 r, K. ?; h

- ^4 G' B+ z0 q) S        }, Q  S( X9 B4 x7 @' X& Z" ~
8 ~$ d' j# t% n# X  _8 w5 v, Q8 I
        private void swarmSetp() {9 M& y( ^2 ], a$ Y
                list.addLast(new Agent(Id));
1 q+ b' s# f2 `9 d( j# E8 z                Id++;9 s# n0 S' K5 a! k, s
        }. f8 y* N( |  x/ ?
" j1 N& V8 ~: I4 y+ v6 H5 m( E3 W8 q6 o# u
        public Activity activateIn(Swarm context) {  Z2 v) Z/ T0 v
                super.activateIn(context);
& I) a+ j* ^0 ]% v5 E; T2 |                schedule.activateIn(this);  u3 k/ w% F6 B$ Y  c7 s% W
                return getActivity();
9 b, v' c0 W% `% r% Z2 E        }
) u8 q5 s0 y4 q( B6 S, @( L% }) K! x: l8 `' ^1 _5 G
        public static void main(String[] args) {3 ?2 V% Y" |4 l8 ^' c! D& D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 V. R& X, H5 W; N: a$ I' g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; P; o" o" O7 M/ u4 f( |
                swarms.buildObjects();
5 R3 S. X5 f9 f% v9 b) ~6 k0 [" o                swarms.buildActions();' x' x$ V3 i8 r$ y$ B" Q0 e
                swarms.activateIn(null).run();
  d' P; P0 ^1 S) S% P9 ^2 K        }
& s# C0 b. |4 X0 `0 P9 ^/ f. R
+ J! |4 ^' i4 G}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-21 23:31 , Processed in 0.016553 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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