设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13656|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 d& a: f5 W! [' I8 T# [4 j

( g' t. [/ @6 T. ~0 s本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( y' N8 i" E' f7 W. ?- ~5 v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& g; |5 c7 \0 b9 _2 e9 \, m& z3 ^
swarm.SignatureNotFoundException
6 i2 h" t+ t) Y        at swarm.Selector.<init>(Selector.java:76)* ~+ W9 p: I$ U6 l. A# t
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 R- T& b5 K- A7 x. Q2 u% G# m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! _6 k; `  b. o7 C6 P6 {
: Y% T3 u5 l: W$ V( ?$ F1 O. q4 O$ `2 B5 P7 L) d( q/ h$ @
import swarm.objectbase.SwarmImpl;
1 }) S9 B( B% P& [; R  k. himport swarm.objectbase.Swarm;) g& D5 I, i, j2 |
import swarm.activity.ScheduleImpl;
$ C" s' }3 C. ?9 h# Z& p* vimport swarm.activity.Activity;5 b' G' n4 E$ f5 z+ k6 o
import swarm.activity.ActionGroupImpl;; S2 b% C% H- J$ t' o$ s# t8 K
import swarm.collections.ListImpl;
  C$ q. s+ R$ b7 C, o- i; s+ o" dimport swarm.defobj.Zone; : q, \4 C& a& K& E% \+ u+ a
import swarm.Globals;; _6 e5 m- i$ g8 P3 e/ f" c
import swarm.Selector;
. a, N+ B* n# H( [$ Yimport swarm.activity.ActionGroup;
% n- u3 J  y+ O* U* ?$ iclass Agent {5 T% v" {% v3 ]9 O
        char id;( Z* s+ |1 B' U: |6 O
' C. A0 B% Q4 f, @) Z3 ?
        Agent(char id) {
3 l. u6 S5 V1 C                this.id = id;
, Q' m0 ]; z" d) R4 p9 a3 C- ~$ R        }
* u. {+ n$ w2 i9 [4 f% \$ ^- D! S- m: a8 d& V# }/ M
        public void agentStep() {3 d7 D; ]! o! M5 V: F: o2 E3 ~! k
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ i! i4 L7 |, p3 ?! r* O8 L4 C/ ^        }
, ]4 m2 A  X8 _, m! P' @4 p}- }1 h) e$ z+ m

8 m7 g( ]3 ^; V# i1 apublic class ActionGroupDemo extends SwarmImpl {! }3 R  S% F- y+ i/ o: b
        ScheduleImpl schedule;5 J3 D: @% t% g) e' P( s
        ActionGroupImpl actionGroup;
( H$ G4 g  v& }1 m3 ~        ListImpl list;! w5 t! i/ @# @" J- L8 t
        char Id = 'a';; P0 \9 Z( b5 P3 [7 W
6 y6 H, f$ G  _. x) o# d
        ActionGroupDemo(Zone aZone) {
. x7 z1 f% A  Z: R1 ?- S& D                super(aZone);
! w; J5 {' K" N) }4 E2 [. d                list = new ListImpl(aZone);7 h2 W* L' b' @" d
                swarmSetp();$ p" Y% H9 l1 `9 F9 [
                actionGroup = new ActionGroupImpl(aZone);: U2 I) X$ i! b6 k, ?
                schedule = new ScheduleImpl(aZone);
+ B1 \; y! ?4 F3 t8 ^                try {# K% q5 J+ q9 y" S, K: O  {8 ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ H4 ]& H! L* q( S" T# `8 V" T9 r( C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ n. @8 s$ J/ r. q                        
* l, F5 z  ?5 ^0 P; r3 o- l                        actionGroup.createActionForEach$message(list, agentSel);
# s3 G1 u2 E# u/ z# i                        actionGroup.createActionTo$message(this, swarmSel);; o5 m, S! ~4 M! k) I# D: J4 B0 e8 h, r
                        schedule.at$createAction(0, actionGroup);
# t+ y& ?  I$ O! G# _9 V3 R                        schedule.at$createAction(1, actionGroup);
1 ^5 T  r3 I4 B; |% I                        schedule.at$createAction(2, actionGroup);
6 P. z7 M( [- `: }3 n) ?8 Z' _8 Y5 K& t6 z
                } catch (Exception e) {' D: ~% c0 ]( p" M, A% a( d& y
                        e.printStackTrace(System.err);
6 p. q0 _/ B8 Q6 G9 z                        //System.out.println(e);
# e, X0 E6 D/ R8 A* @  @                        System.exit(1);* u. K; `) D, i" {& C' W
                }( W4 N6 ^( U. p! b- y+ U5 Z
& P; T3 ?4 U$ S+ a5 k% `- A

3 y& }6 q+ _* s' U        }
* ~, k9 Y3 w7 z0 ?
" c) g4 i% D. c: `: ^$ P; p        private void swarmSetp() {
" [6 _8 `9 [- [- i, ^* L2 r$ L                list.addLast(new Agent(Id));
) T8 W0 v! ]3 c/ B                Id++;
4 Z* B, ]8 f; n. K! {        }
3 S3 c# K5 [1 g
, t# G+ i4 O+ `        public Activity activateIn(Swarm context) {
: H9 U, D% y. J; M                super.activateIn(context);
- M( A4 M  i0 l) ^3 h# ]( T1 q                schedule.activateIn(this);( ?9 d( ]) l) A% M
                return getActivity();
# A' [; y7 _9 w/ q1 g* E! R        }0 s  c, H, s8 M( e

3 F1 w: @9 w. x! \; L3 y, t7 I        public static void main(String[] args) {$ e9 T$ k6 u! v$ [2 c
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 V% y3 g$ R* Q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- O& C" a( s1 }                swarms.buildObjects();5 @6 U" ~) [/ R, @( u! w
                swarms.buildActions();2 T, U5 k* h: U( _3 `) R
                swarms.activateIn(null).run();
/ w! r& K1 W+ d        }
; N$ ?, ~6 h; X+ a$ T: F% A! w5 F0 i! ~, O; a; a1 E
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-13 19:33 , Processed in 0.017670 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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