设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9830|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) Z4 T! y- O. O: ]. d
& ~8 _3 X$ }8 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 s7 s$ k# [# H  k! J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# t% X5 B! l* l* tswarm.SignatureNotFoundException8 R! ]- Q6 l8 f& Q9 z8 L! A
        at swarm.Selector.<init>(Selector.java:76)( V3 A! L, v+ I9 d$ C7 }. l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); q; l0 o+ t! G& \& m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' ^; h4 Q8 C2 d! h. w" ~7 l7 Z: Q
7 l2 M; c+ t+ `/ A7 ?
import swarm.objectbase.SwarmImpl;
  b  N* h6 i: @" ~import swarm.objectbase.Swarm;! m2 l# B' v( X0 S
import swarm.activity.ScheduleImpl;
* L. ]" A$ m- f# l3 Y+ H9 r1 ]import swarm.activity.Activity;
# O/ d$ u7 c$ ~' K0 T6 Simport swarm.activity.ActionGroupImpl;$ M, g/ W4 C1 M
import swarm.collections.ListImpl;
' d: J$ {2 f7 V3 t) U' E' Rimport swarm.defobj.Zone; ; U2 E/ M0 P1 Z$ E
import swarm.Globals;
3 i0 A; z; ^% X& Qimport swarm.Selector;
' ^3 ~/ I- d  @; A3 G' uimport swarm.activity.ActionGroup; 1 w% e' {; V" K2 d- }9 Y
class Agent {
  ], G0 o( j0 y1 d        char id;
3 K, X5 A! ~- S! W
8 ^  b. r" ]- W, x, a- O. w9 C        Agent(char id) {
; }( r8 q$ A4 Z$ Q5 w, I                this.id = id;
7 q8 v( }! z* y4 l: O! _7 U        }
/ x' R5 c- f, _' g/ Y0 }
2 q2 w& o, @1 |1 O% n7 v        public void agentStep() {
3 N. h9 l7 H/ W8 g                System.out.println(id + ":" + Globals.env.getCurrentTime());
# M2 N, h. L, z$ R2 A9 q        }
& D: C) R; j+ `4 w% `  g+ w}
* D+ C# a# [; j) j" F: G9 l/ y* `$ ^/ F- f0 O5 H+ P: Z
public class ActionGroupDemo extends SwarmImpl {& B. z; V9 T' s7 ]* Q/ [* ~1 k
        ScheduleImpl schedule;
2 P$ I( |4 P) F+ ~9 {6 S        ActionGroupImpl actionGroup;
3 }% ~7 p3 a" F- q8 M        ListImpl list;: e) U7 V- v* i0 z! H* I7 F* [" V: J
        char Id = 'a';
! W) I# R# U% N0 _9 _0 N/ R$ u# o8 G. y' D
        ActionGroupDemo(Zone aZone) {% j. g; U8 d; \) X
                super(aZone);
% ]5 k5 o/ U2 f$ H/ R                list = new ListImpl(aZone);, x* W+ e7 C* W
                swarmSetp();' c# S9 k7 i7 o
                actionGroup = new ActionGroupImpl(aZone);
2 w$ T7 ], t" D% f& R/ A                schedule = new ScheduleImpl(aZone);
9 x5 {) [" l! a8 [0 u                try {
( X0 E, X  x- X9 I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 M9 y3 j2 [( N/ |$ o: l
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 [( O& K5 W6 ^3 M: [* ?2 W1 n
                        
: M- J2 r; K# \                        actionGroup.createActionForEach$message(list, agentSel);# M& b/ H6 _1 Q1 e% v
                        actionGroup.createActionTo$message(this, swarmSel);: e5 O2 W4 W. U" K
                        schedule.at$createAction(0, actionGroup);
% H% o0 ?9 }1 U  K                        schedule.at$createAction(1, actionGroup);
2 y. T7 o6 B  P9 i6 o6 X2 H                        schedule.at$createAction(2, actionGroup);" V8 y+ N2 `- N; g/ c* ^5 }, m: d

1 l+ H2 r# U% ^9 W                } catch (Exception e) {
# _) Q/ b; u2 }5 L& ^                        e.printStackTrace(System.err);! z1 \( E0 _6 @6 q5 {
                        //System.out.println(e);7 S2 {6 m; k& A! H
                        System.exit(1);8 Q, a8 `4 P) G* B6 C+ G
                }
1 S! E* m" l& u" p7 P  T1 F( r  Q! W" z4 P
0 i0 q  f- Y/ q& [# c
1 a* ~7 N' W! f! K" h  E) J        }' ]7 z8 f+ j1 _

2 i  f* \% R- h! ^$ o( P; E2 W        private void swarmSetp() {
7 F$ Q; J% K0 Z  M) C# E0 i' g                list.addLast(new Agent(Id));7 b: @/ d# s' Q8 ^$ I- h
                Id++;
1 u+ m+ Z. g$ i( a        }: P, G4 r3 Q& M4 I4 ^. M; Q
6 l* m' o$ X2 W% q
        public Activity activateIn(Swarm context) {: f; H! z# \. L3 _& k4 U
                super.activateIn(context);
$ H7 B" j2 M4 z) ^7 r1 k                schedule.activateIn(this);+ k- s' r( f+ @1 I5 W0 a
                return getActivity();) `/ F2 d2 Z, ]" C* z2 ]0 B
        }
; T1 h; Z4 A! t( J  X8 b7 ^$ R# R' v+ ^) _/ g+ s
        public static void main(String[] args) {
3 H7 J. [2 y, {# x3 p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 @' V9 M7 R& v
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 K" @7 D, H1 T* ^5 e: O                swarms.buildObjects();: l/ u: h% P( p
                swarms.buildActions();* ~) w5 s& ?+ e# s" S) |
                swarms.activateIn(null).run();
* s4 ^7 |+ |8 W! ]6 ]" I        }+ A; T" s( j9 d3 V# z

# S6 t7 X2 f" R# @$ J. _, z* i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-24 15:56 , Processed in 0.015899 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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