设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6476|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : j% ?* }3 P8 y
6 Y, K4 U! T* k, N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; Z6 e+ T7 h+ M0 o( o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 ]" m# d% N9 `/ |& S8 c/ i1 Iswarm.SignatureNotFoundException$ o7 ?: \$ F' X- ~  ?+ h
        at swarm.Selector.<init>(Selector.java:76)! \' Q2 s6 @! j/ c0 `* e
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 ^' a+ t3 r" g$ o# W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 c( P- i( g1 o! g& a- H3 a

9 d$ w* r) v" Z1 N0 S' M; l
6 `# A  R! H% o& M# a. `( J$ P& Y7 g6 U' himport swarm.objectbase.SwarmImpl;
  @9 r7 [9 z3 P6 }import swarm.objectbase.Swarm;
: W8 ?4 E. c" w" A. ~import swarm.activity.ScheduleImpl;. c: G4 l4 X6 f
import swarm.activity.Activity;1 J" J$ [6 I4 o( G
import swarm.activity.ActionGroupImpl;6 }% Z% {, v, T0 ]! i
import swarm.collections.ListImpl;
# D# ]* L. u- }3 n' O; ~4 \4 Oimport swarm.defobj.Zone; 7 m* e& W! x1 ]. O
import swarm.Globals;6 U# {6 o  R& T, w2 L6 A8 q
import swarm.Selector;+ `0 s8 D2 d( ?5 a$ K. l3 o/ v
import swarm.activity.ActionGroup; 5 o# M7 O* ?- P9 Y9 Y5 ~- u" C1 k0 k
class Agent {
+ M0 t3 m: n  R5 f  N- `8 H        char id;
8 S* E+ {2 _4 q8 x
! ]$ D  C8 f* M. N        Agent(char id) {
  S) J& c" _, n5 @                this.id = id;: f* M/ T9 s1 q8 d  I- ?$ F$ o- q
        }
  B- M! \  _! \
9 b# u: q* v/ C1 A        public void agentStep() {
5 W' V* i4 o; y; f7 r                System.out.println(id + ":" + Globals.env.getCurrentTime());
" N. p8 k0 g# g# l        }
1 Y9 J. x! V$ l. X}6 b% q$ ], L. Q1 X4 P% k% V# \
5 P" o) |( @/ O
public class ActionGroupDemo extends SwarmImpl {6 M7 N/ q6 ]9 c  S0 e7 F
        ScheduleImpl schedule;
+ O1 k! K, c" h$ E- M        ActionGroupImpl actionGroup;
9 f) M& M( U, O  Z        ListImpl list;7 G' t& Y" O1 d: m( K! s
        char Id = 'a';, I6 P+ Q% t; i* G4 H4 {4 L
9 ]1 ]- m5 ]$ h8 r
        ActionGroupDemo(Zone aZone) {
6 t& X  g/ y- j3 D                super(aZone);3 }7 L+ T: _( ?; ?4 ^9 w- [
                list = new ListImpl(aZone);
6 T: W* I# t# I                swarmSetp();
4 b2 J% {' a5 }2 Q2 l, `8 _* w! z2 P( p                actionGroup = new ActionGroupImpl(aZone);
' n) v9 Z6 z, }2 I: ~* |# r                schedule = new ScheduleImpl(aZone);. S6 ^: K' k( T; m) F# |# e5 W
                try {
' c& V8 S& \7 d; u) g                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 Y2 e: `1 l3 o' ^                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, Q" V1 G# p. X! X2 @1 [1 a; r1 Z5 B                        & y5 O3 |2 h1 f
                        actionGroup.createActionForEach$message(list, agentSel);, B4 b; Z% P8 m
                        actionGroup.createActionTo$message(this, swarmSel);$ c* s/ _* R/ y8 f2 ~* C0 N
                        schedule.at$createAction(0, actionGroup);* W! L9 j* `7 c' G# J  x9 x
                        schedule.at$createAction(1, actionGroup);9 ~) D! W  ]8 H; l
                        schedule.at$createAction(2, actionGroup);
1 w2 ], \# I' K2 M, f; K* J& @0 ~) N) C4 V0 K; B0 ~" W2 b
                } catch (Exception e) {& g+ P: T& y5 P
                        e.printStackTrace(System.err);
! D0 G9 G/ r5 P- P* l                        //System.out.println(e);
* {- l7 K* E9 [2 ?4 k                        System.exit(1);
# Q1 L9 S. a$ r) E                }
0 Q# G- R, Z" q) ^& g- K& [/ n, \4 P3 g. {" j4 P+ m( `. \

1 A) d2 m( W0 `8 q        }% T! s' W7 a8 `/ N) C. {3 F
# f" e; G" A: o) N
        private void swarmSetp() {
  `- v$ g" I4 f$ e" H                list.addLast(new Agent(Id));
2 C* [: [- A5 q  B8 u, Z6 g                Id++;# H/ ?( a& K( q5 W
        }4 r  F9 M) \, e0 \4 y  l, c

! @. g& x2 ~9 O8 }        public Activity activateIn(Swarm context) {2 ^8 S/ G" s: x1 h
                super.activateIn(context);
. B  a5 [2 f( O( R4 Y                schedule.activateIn(this);
, W6 p) p6 U4 u6 f                return getActivity();* z4 u6 v% g. L$ e( Z
        }+ m+ A! d* z5 p0 S# y
/ G" I% q& D% z1 P
        public static void main(String[] args) {
1 p! s6 t0 A9 e/ \4 Y8 _) r: ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; m, S  c5 C4 {; K6 L                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 [, r! |6 F: f2 y  ?+ ]                swarms.buildObjects();7 |- ]; o2 c2 n* O; f3 R' \2 n2 [3 K
                swarms.buildActions();0 `" I+ m3 A7 t+ q
                swarms.activateIn(null).run();7 S4 ]- o9 P: S# v2 K! [1 l- `. Q' ]( q
        }
. T4 O$ ]8 r! I2 b' R$ P% h4 ?+ U0 {- L+ F4 Q2 w* t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-29 19:01 , Processed in 0.032948 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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