设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10486|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 E- M, L- r1 P5 S) g6 Q# K& ~) T+ C; @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 L' V; E2 r4 r2 \- e2 n3 Y# i, z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 ]8 ~: \2 V' @+ p6 f- E
swarm.SignatureNotFoundException
, b( ]: s& U% O  w* ?, E* o        at swarm.Selector.<init>(Selector.java:76)) _+ e& @$ X; |. A7 y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* O( B9 t6 w) u  |& b! ^2 l7 S* V        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 Y4 t0 q9 M0 k8 w: X
# I) W% G7 {9 ]7 ?2 V& o% `
# R2 j* }) Y  g- |; C, n( e
import swarm.objectbase.SwarmImpl;' V" \% w" t+ y- v
import swarm.objectbase.Swarm;$ F9 C. ]; X: ]( `/ G, M
import swarm.activity.ScheduleImpl;
, k" J) J! t2 l2 H$ Y/ [import swarm.activity.Activity;' F% X0 ]' I4 Z  Q$ K% ]- E
import swarm.activity.ActionGroupImpl;
# h( V0 i: z  ]; I5 ~- C: H2 @import swarm.collections.ListImpl;4 K0 `8 L7 [* \: f
import swarm.defobj.Zone;
. o( ?5 M. b0 a) |- M' m; i4 s8 cimport swarm.Globals;6 y6 ?. q* X3 l! [7 z& V* R
import swarm.Selector;0 V7 X% B2 \# U
import swarm.activity.ActionGroup;
  V1 Y3 F1 e* xclass Agent {
$ M4 B/ z/ `8 G# A) p  V        char id;; ?8 a! Y# f4 L+ ?/ R8 P
' S8 v; Y1 K$ B, y- A1 V/ B
        Agent(char id) {
! _  q8 f/ o. U; b7 x5 ^                this.id = id;& h4 K% q" h' d7 [  S
        }, I4 B( J- h& J7 ^; C* F
9 C! h- M1 K0 a) B; ]- z
        public void agentStep() {3 g, m7 ?- s9 a' Z: @
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 H% _2 k, c0 S  S- I: c& E% B
        }4 I! U% \# @0 K0 A  r1 {( _
}  i. J' z9 G; H* b& t% K
3 S# Y0 I+ r; z6 M
public class ActionGroupDemo extends SwarmImpl {
4 p/ K3 |$ K1 p7 p/ V/ `        ScheduleImpl schedule;
; }, P. A$ R% c# l. l        ActionGroupImpl actionGroup;2 b) x1 k7 E' {3 O# n% G! A  k% T% u& c
        ListImpl list;7 T( ?# z3 E* h0 v9 R! W8 z
        char Id = 'a';& [+ J2 ]! r; k1 q. \( I% _( J% u

  [2 z( K! ?' s* T( f        ActionGroupDemo(Zone aZone) {
& H  y4 {5 M% J& n- [8 k( r& o                super(aZone);
5 _) v0 L. x1 A; i! h                list = new ListImpl(aZone);
! \& a6 s6 j. H" G                swarmSetp();
% [4 L/ J7 h& p# }) A                actionGroup = new ActionGroupImpl(aZone);
4 n( D# b. K: V3 T9 l; k. o                schedule = new ScheduleImpl(aZone);* l1 i; i2 _% K$ A. g5 K
                try {/ @7 y7 H; I& B+ t
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 w; \; ?9 ]) h8 T3 s- E
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' V  E; ?4 O) O$ k
                        
! K  e" ?' e, _/ A                        actionGroup.createActionForEach$message(list, agentSel);
; s  {" ~& f, V) g5 ]" F7 {                        actionGroup.createActionTo$message(this, swarmSel);
& f3 X) |: c# Q                        schedule.at$createAction(0, actionGroup);" i/ u. ~2 e& V
                        schedule.at$createAction(1, actionGroup);
$ n. D. U2 d0 Z2 E4 e0 ?6 J$ h" N                        schedule.at$createAction(2, actionGroup);7 M7 {# s- l2 M) i5 I

4 o) H& a5 I$ ^                } catch (Exception e) {
; L9 {9 l* n2 `9 C% u3 e                        e.printStackTrace(System.err);
' l6 H4 J3 X2 k% B7 B/ t, I- R                        //System.out.println(e);
1 E+ k1 ^! p1 T' _                        System.exit(1);
! X% t  g7 E& v2 `2 X                }* g' k3 u: g, v- v7 J  c' v

) _6 p- D- e' P) A/ v; u$ A$ ]9 t, d! a- ]+ d
        }* f8 U7 k9 z' \$ ]

" l" C& V. q: ]- r+ \, g9 a7 q        private void swarmSetp() {
7 A; x# D( a5 x( J                list.addLast(new Agent(Id));
6 t1 d% Q) K  b/ N                Id++;. S) F& u2 M/ Q$ `* Y
        }4 ^" f" c; E1 m, c$ Z. O

5 n; e# |$ b5 p1 \6 u" C# r6 u' y        public Activity activateIn(Swarm context) {
: p4 q) ]! ]* m% o9 n, `. M                super.activateIn(context);! m; @" Q0 M) S6 G& r2 k
                schedule.activateIn(this);
+ I1 V9 y, i. [* A, s! Y8 Y# I                return getActivity();
6 s' H) |! m( a9 o$ h/ F6 o        }
: s" k% [% q! f8 t$ b$ d$ F  B4 R1 k& T
        public static void main(String[] args) {
# G7 Y3 f& [: A' Y& R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 \! j5 L2 F+ e- a( j
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 ^) G5 t. J! ^+ F- C8 r* c5 [
                swarms.buildObjects();
! F' t& Q5 J/ I2 Y, i                swarms.buildActions();
3 u  W# P6 Q2 ^; ?3 F; M                swarms.activateIn(null).run();1 ]0 U; g: ~# Q. ~$ P7 n2 `
        }
' T: P* q# Q9 E* Q& O0 }  t4 I) G1 G# b# `8 O+ {- S) S
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-15 09:42 , Processed in 0.018668 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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