设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8739|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' J1 r& X2 F" ]. \" X4 z7 L. g
) k. z  r: l$ O' A' h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. |' Y5 P/ x( m' X! _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ S4 U/ L0 b; f. r
swarm.SignatureNotFoundException; ~4 ]- A' c- B1 d  n4 I5 i. O
        at swarm.Selector.<init>(Selector.java:76)
. H& z/ T4 e. e, l        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 k9 l4 O5 D, D+ Y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 ^+ }3 ~1 t! Y$ r$ R

4 W" s2 q3 x- U3 B/ E2 u, ~7 _; Y
% k! I' q. h/ n, [! c$ J& w; j0 ~import swarm.objectbase.SwarmImpl;
3 s5 q, K- C- O# c) qimport swarm.objectbase.Swarm;' h; H- t/ R& k! r
import swarm.activity.ScheduleImpl;
6 i* k* Y2 O8 a4 I* ^' vimport swarm.activity.Activity;4 C" Z8 E& t9 s& Z3 f; w' I( \
import swarm.activity.ActionGroupImpl;, i. l( J, D+ F* G# g6 G
import swarm.collections.ListImpl;
! A! h2 A3 X6 \% W7 Mimport swarm.defobj.Zone; % P1 K1 o$ ^; r/ ?9 K
import swarm.Globals;% Y: P( K: A* t3 B& X
import swarm.Selector;! \! l* E2 k8 _+ B1 y- y: ?- f7 R
import swarm.activity.ActionGroup;
, n5 ]! l+ S) t: P% X0 Yclass Agent {8 m* \/ n# p! u1 U& u4 N* z8 V
        char id;  P( |  ]3 c; M' \; c1 t
; ]2 T7 @0 q2 l+ q; V
        Agent(char id) {/ Y3 L  R* k! U# l8 `- q2 a- w
                this.id = id;
" e/ Z( Z- E3 h! N8 M, a        }8 S4 t7 Y* G" r# U* D% d0 T
  N: j4 E  X5 r# T
        public void agentStep() {
3 T8 N4 _) K9 W( j# j( k, m8 g8 a                System.out.println(id + ":" + Globals.env.getCurrentTime());% Q3 g, A4 l+ t9 a4 R# y$ i
        }
, \5 T3 ~3 W( L; Z, ?}( O# Z, T" W7 v/ y! O
# G$ C3 v/ a1 P/ b' F6 M' J
public class ActionGroupDemo extends SwarmImpl {) t9 K  C* _2 W% r$ U! z
        ScheduleImpl schedule;
3 J3 W3 y/ H: }        ActionGroupImpl actionGroup;
( x! A: R8 E& e( k$ U' O& n1 J* {$ i        ListImpl list;; m7 m( `7 t/ b* G: L6 o% b
        char Id = 'a';
+ l1 @2 f1 h( H# u! \. g& e5 c) ^  g$ b& f0 C
        ActionGroupDemo(Zone aZone) {
' Z# S; i( m9 f                super(aZone);
4 L9 f( |% x% J! Z' p+ {& J+ k/ L                list = new ListImpl(aZone);1 P7 P+ M% y  ]: e; A- ^, {
                swarmSetp();* B. s# ]0 i) e
                actionGroup = new ActionGroupImpl(aZone);
. v1 `% }# s2 W1 t                schedule = new ScheduleImpl(aZone);/ U# p- q/ n  V# T, e: j
                try {
' Q% s5 i% v% {2 k/ u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) J! k/ w, O% v" T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" }; q. b/ r1 Z% {" C
                        7 {% l) A0 U% i  Z( u0 I* [
                        actionGroup.createActionForEach$message(list, agentSel);
$ B7 J8 u" Y6 n                        actionGroup.createActionTo$message(this, swarmSel);
" }% \9 |/ {7 b: g                        schedule.at$createAction(0, actionGroup);
  |$ S" l2 B  `                        schedule.at$createAction(1, actionGroup);; [) f" v+ s$ O! h: ^5 T* K
                        schedule.at$createAction(2, actionGroup);7 q. }$ K+ L8 Y6 k3 N0 w5 U5 h( |4 \9 ]
) h' @& _+ X) V
                } catch (Exception e) {0 b0 ?! |* t- M1 T3 C1 t/ ]" `$ p
                        e.printStackTrace(System.err);, h( C: @+ f% x, Y
                        //System.out.println(e);
8 u3 \4 m1 k2 f7 l/ F$ b                        System.exit(1);8 @$ U$ w/ q. D$ X4 _8 ^+ q
                }( T; L# d9 ^' a. {' l7 A4 s# c* ~; L

: V( T! V- t2 Z8 |4 c3 a2 l- j0 f0 R( J
        }
# v# G4 B  Q/ I  \! v
) b$ \2 y  b/ h8 P) }2 ]        private void swarmSetp() {, D; T- \: b9 @7 i2 U, w
                list.addLast(new Agent(Id));
0 B) x; V$ S0 G4 f. H* V& U7 t                Id++;- m- z6 J) M% b- n) Z' i' O- g. S
        }
1 r5 c4 D5 R& T  ]7 P  C/ l& s6 N5 c+ a8 J9 u. K' ?
        public Activity activateIn(Swarm context) {2 o! n: F- N2 f6 T: {# C
                super.activateIn(context);
8 u8 s& f# M) q5 `0 h2 e# V: f                schedule.activateIn(this);
- t) Q; B4 p( N& F2 P' i                return getActivity();
1 |( R! \- N, |" R- G1 M! d        }' L8 d9 e5 ?! S  q* k

  T8 `' e1 ^/ S9 K8 ^2 s. K9 ?        public static void main(String[] args) {' i2 ~4 S1 w* c: I
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ t3 |! U* `- a! a" R& s& @! S* J: G
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. u% G# \, t; b: s) Q* d+ I
                swarms.buildObjects();
% S8 s  C( {3 @0 m                swarms.buildActions();
8 n' f# Q4 {4 w# }                swarms.activateIn(null).run();
# K: v4 b9 \% M( {& \  k        }
) w, g( `1 Q, i
! u9 i5 L  @/ j' G) \}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-21 05:05 , Processed in 0.016001 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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